0

我正在开发 ASP.NET MVC 4 应用程序,它将用于配置复杂的应用程序。我想要一个配置页面,有多个选项卡。每个选项卡将用于配置系统中的不同部分,当您单击它时,将使用 AJAX 加载正确的表单(每个配置选项卡将是不同的局部视图)。我想在页面底部有“保存更改”按钮,这将保存整个选项卡中的更改。

由于系统本身是模块化的,我想让配置站点也模块化。这意味着,我希望每个选项卡都是某种插件,向我公开以下方法(通过从接口继承):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" })。我该怎么做?

谢谢。

4

1 回答 1

0

只需为每个配置页面制作一个局部视图并根据需要加载它。我同意 KISS 是最好的。

于 2013-05-08T20:47:56.390 回答