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