2010-04-01 41 views

回答

0

你有一個獨角獸,因爲今天是愚人節,傑夫是這樣的事情的吸盤。

有些人會說MVC網站比ASP.NET Forms更可測試。我猜你可以通過添加測試來進行測試。

+0

不明白這是爲什麼下降了投票,投票最多爲關閉設置。 – 2010-04-02 03:29:16

6

首先,你必須在任何地方使用密封類和單例 - 這些包裝類都不能用虛擬方法模擬出來或者任何東西。接下來,這很重要,您必須使用Reponse.Write而不是返回視圖。它還有助於序列化所有表單參數的內容,對它們進行加密並將它們存儲在頁面上的隱藏輸入中 - 然後始終檢查新參數與舊參數,以查看哪些內容發生了變化。使用這種方式,您可以生成這些稱爲「事件」的事物 - 它們就像按鈕單擊並在Windows窗體上進行選擇一樣。這些在單元測試中更容易理解和模擬。

+0

謝謝!所以基本上我必須開始讓所有的類都靜態正確?確保它幾乎是不可能嘲笑他們......謝謝,這是一個開始:) – 2010-04-01 22:03:41

+0

是的 - 然後確保你在你的控制器幾個事件必須按照正確的順序被調用爲「設置」狀態你的控制器。我會建議諸如「Init」,「PageLoad」,「PreRender」等事件。同樣重要的是,您可以在視圖的HTML中配置諸如數據源之類的東西,您的控制器可以查看它並將其用於數據綁定事件。 – tvanfosson 2010-04-01 22:08:06

+0

另外,將LeprechaunOverlord附加到每個班級。 ASP.NET MVC標記不像ASP.NET WebForms標記那麼醜陋,沒有VIEWSTATE XSS漏洞等。因此,我們喜歡在這種情況下使用Leprechaun。 – 2010-04-01 22:08:53