验证断开连接的 POCO
在我的 ASP.NET 应用程序中,我有数据层、业务层和 UI 层的单独项目。
我的业务层由使用 DataAnnotations 进行声明性验证的普通对象组成。
问题是,当谈到保存它们时,我不确定如何处理验证,因为它们没有直接绑定到任何数据上下文,而是映射到单独的数据层对象。
有没有办法触发对这些类型的对象的验证?
In my ASP.NET application I have separate projects for the Data, Business and UI layers.
My business layer is composed of plain objects with declarative validation, using DataAnnotations.
Problem is, when it comes to save them, I'm not sure how to process the validation, since they're not bound directly to any data context, but rather, are mapped to separate data-layer objects.
Is there a way to trigger validation on these kinds of objects?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
在 StackOverflow 上的这篇文章中(间接)找到了答案。 (感谢 Atwood 和 Spolsky!)
结果您必须调用 Validator 类。
因此,我向 POCO 添加了一个 Validate() 方法:
我还必须将 ComponentModel.DataAnnotations DLL 的 .NET 3.5 版本替换为更新的 .NET 4.0 版本,其中包括 ValidationContext 类等。
Found the answer (indirectly) on StackOverflow, on this post. (Thanks Atwood & Spolsky!)
Turns out you have to call the Validator class.
So I added a Validate() method to my POCO:
I also had to swap the .NET 3.5 version of my ComponentModel.DataAnnotations DLL for the updated .NET 4.0 version, which includes the ValidationContext class, etc.