我想要一些使用 EF T4 POCO 生成器生成的模型的建议,并像 MVC 项目中的 /Models 中的普通模型一样利用其中的验证属性。
背景:我们正在尝试设计一个 web 应用程序,2 或 3 名开发人员将致力于它。它采用 Scrum 风格,在构建 Web 应用程序时,我们会定期从客户那里获得需求修改。表、列和关系可能会相应改变。
我们的方法:我们希望使用 EF T4 POCO Generation,因为每次在数据库中添加新表和列时,EF T4 都会自动更新 POCO 模型。我们希望将这些 POCO 模型用作 MVC 项目的模型层(在不同的 Models.dll 中并将其包含到项目中,而不是坐在 MVC 项目的 /Models/ 文件夹中)。
问题:我们想为模型类和属性添加属性。但是,EF T4 将覆盖模型类,我们不能(也不认为我们应该)将这些属性添加到这些模型中。我们不知道什么是正确的方法。
我只能想到在 MVC 项目的包装 ViewModels 中制作属性。它们包含 EF T4 完成的 Models.dll 中的所有必要模型。然后把属性放在前面。但在我看来,击败 DRY 原则很丑陋。你会怎么做?提前感谢您的想法!
--- 编辑 --- 我确实在这里找到了一个很酷的技巧来帮助我的包装想法。但是,我没有提及它,因为我想开放地查看不同的建议并进行比较:)