應用於 Web 表單的 MVC 理念
總的來說,我對程式很陌生(實際上是在 2 1/2 年前開始的),我正在嘗試確定使用我在工作中製作的 Web 應用程序的最佳方法。工作中的一位高級開發人員鼓勵我進入 MVC,經過 24 小時的大量部落格、原始碼和其他關於該主題的材料的傾注,我開始理解我為什麼要使用它。
但與此同時,我們公司現有的應用程序是作為 WebForms 編寫的,所以我不想做像使用實際的 ASP.NET MVC 框架來製作我的應用程序那樣激烈的事情(真的會那麼激烈嗎?)。
我真正想知道的是,做 WebForms 是否可行甚至可能,但仍然遵循 MVC 的關注點分離哲學。我真的只是在已經很複雜的 .aspx + 程式碼隱藏頁面中添加一個不必要的層嗎?
部落格圈中的每個人似乎都認為,如果他們想做 MVC,就必須使用某種框架。WebForms 中的什麼阻止了他們自己做?
如果您的團隊中的一位資深人士鼓勵您為您的應用程序研究 MVC,並且您認為這是一個很好的舉措,那麼就去做吧(如果這個應用程序特別是獨立的)。
您還可以查看MVVM模式。這是許多人對 WebForms 所做的,它與 MVC 模式非常相似。通過將 MVVM 模式應用於 WebForms,您將展示一個人如何仍然可以使用 WebForms,但可以通過 ASP.Net MVC 獲得 MVC 模式中的許多優點。這將是向團隊中的其他開發人員展示如何在不完全放棄 WebForms 的情況下使 WebForms 更具 SOC 和可測試性的好方法。
這裡還有一些關於 MVVM 的連結:
MVVM 在 Silverlight 應用程序中也非常流行……
還有MVP模式。 這是 WebForms 的開源實現。DotNetNuke 5.3 使用了這個特定的實現。
如果您想獲得對程式碼的更多控制權,但仍擁有您喜歡的 WebForms 功能和/或出於任何原因(例如在您的很多使用它的遺留程式碼。