2013-05-08 28 views
0

我正在開發ASP.NET MVC 4應用程序,它將用於配置複雜的應用程序。我想要一個配置頁面,帶有多個選項卡。每個選項卡將用於配置系統中的不同部分,並且當您單擊它時,正確的表單(每個配置選項卡將是不同的局部視圖)將被加載AJAX。我想在頁面底部有「保存更改」按鈕,這將保存整個選項卡的更改。使用ASP.NET MVC編寫模塊化頁面4

由於系統本身是模塊化的,我想使配置站點模塊化。這意味着,我希望每個選項卡都是某種插件,它向我公開以下方法(通過從接口繼承):GetConfigurationPartialView(它將返回帶有此選項卡的視圖模型的局部視圖),SaveChanges(其中將配置保存到數據庫作爲草稿),以及GetConfigurationXml,它將導出完整的XML配置並將其應用於系統。

我的問題是:

  1. ,你怎麼看待這個問題的設計?你有更好的想法嗎?
  2. 你如何推薦在主視圖中實現這一個「保存更改」按鈕?我該如何迭代所有插件並調用每個插件的SaveChanges方法,並向其傳遞正確的模型對象(這是部分視圖的模型),並填充所有數據,而不必深入瞭解主控制器/視圖中的每個插件對象,所以我可以保持這個系統容易延伸?
  3. 某些選項卡包含帶數據的網格。我開始研究Kendo UI網格。我想讓用戶在網格上,在客戶端執行所有操作(刪除並添加新行),然後我想在SaveChanges方法中寫下關於在服務器端獲取客戶端所做的所有更改的列表(例如,在僞代碼中:changes [0] = {Action = Delete,ProductID = 1},changes [1] = {Action = New,ProductID = 1,Name =「aaa」})。我該怎麼做?

謝謝。

+1

我認爲'KISS'的首字母縮略詞是apt - Keep it Simple Stupid。不要過度設計,聽起來像這樣很難保持 – diagonalbatman 2013-05-08 20:37:31

+0

如果事實證明這隻會讓事情變得複雜,我可能會讓它變得更簡單。我試圖檢查我現在是否可以做更多的工作來節省大量的時間(並且使維護更容易),因爲配置上的新類型會定期添加到此係統中,並且我想使將它們添加到配置站點也非常簡單。 – 2013-05-08 20:41:21

回答

0

只需爲每個配置頁製作一個局部視圖並根據需要加載它。我同意KISS是最好的。