实体框架数据库首次 POCO t4 生成和验证
注意:我使用的是 ASP.Net 应用程序,而不是 MVC [因此不支持验证属性]
我使用数据库优先方法,然后使用 POCO t4 模板生成 POCO 类。我将生成的 POCO 类移动到它自己的库(Domain.Model)中。
现在我想使用 Enterprise Library 5 将验证注入 POCO 类。我该怎么做。我不想在 UI 中执行验证,但想使用 Enterprise Library 将验证属性添加到 POCO 类,而不修改生成的 POCO 类。如果我修改它,那么每当我生成新类时,我都会丢失所有更改。因此想要在 POCO 类之外但使用属性执行验证。
希望我没有问一些不可能的事情
NOTE: I am using ASP.Net application and not MVC [so no validation attribute are supported]
I used Database First approach and then generated my POCO classes using the POCO t4 template. I moved the generated POCO classes in it's own library (Domain.Model).
Now I want to inject validation to the POCO class using Enterprise Library 5. How can I do that. I don't want to perform validation in UI, but want to add the validation attributes using Enterprise Library to the POCO class without modifying the generated POCO class. If I modify it, then whenever I generate new classes, I will loose all my changes. So want to perform validation outside of POCO class but using attributes.
Hope I am not asking something which is not possible
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
在这种情况下,您必须放弃 POCO 生成器并自己手动创建类 - 它将允许您使用您想要的任何属性,或者您必须修改 T4 模板来为您添加属性。要修改 T4 模板,您必须使用元数据中的信息来设置正确的属性,或者必须使用 结构注释并在以 XML 形式打开的 EDMX 中手动定义属性。我描述了结构注释 此处,但该示例与您的问题无关。
In such case you must either give up with POCO generator and create classes manually yourselves - it will allow you to use any attributes you want OR you must modify T4 template to add attributes for you. To modify T4 template you must either use information from metadata to setup correct attributes or you must use structural annotations and manually define attributes in EDMX opened as XML. I described structural annotations here but the example is not related to your problem.