只是作为这个问题的前缀,我决定看看将我们的旧遗留系统(从 vb6、vba、vb.net 到 c#.net 的 40 多个程序)移动到使用相同 DAL(条形码终端和一个基于 Web 的系统),因为我大部分时间都在修复 15 年前的 vba 程序中糟糕或不存在的业务逻辑。我最近构建了一个完整的实体框架模型,并使用了流利的验证,并且在使用了一段时间后对它感到非常满意。
这个小团队熟悉网络表单(但不是很熟悉),但最近几天我探索了 MVC Razor。我喜欢 MVC 框架,直到我尝试开始尝试在同一页面上添加更多功能,然后复制我们最近放入 Web 表单的系统似乎非常困难。以前,我会急切地加载客户及其所有子实体,然后将其绑定到客户的单个页面,以便他们可以访问所有内容(这是他们想要的),它工作正常并且不慢。从这个单一页面,我可以编辑他们所有的帐户详细信息/联系人/电子邮件/电话/工作。
我在 MVC 中完成和看到的所有示例都处理单个更新、单个编辑等,但您肯定不能将每个操作分离到新的视图/页面中吗?我可以将丰富的模型传递给 MVC 中的视图,但是尝试更新所有不同的子实体会很痛苦。
这可能是 MVC 并非设计用于的确切设计,这没关系,如果 MVC 将成为一个更好的平台,我愿意对其进行调整,但是您打算如何处理添加这种复杂性?我见过的一些方法:
- 很多局部视图?将子信息传递给他们(或 id 和延迟加载)?
- 我已经看到了将多个
<forms>
事物包裹起来并以这种方式处理操作的方法。 - 将几乎所有任务分开
如果解决方案更轻量级且更易于维护,我将去研究我需要的任何东西,我只是想在早期阶段看看我是否在浪费时间。任何指向我应该问的正确问题的指针将不胜感激。