业务逻辑中的验证 - ASP.NET Web 表单

发布于 2024-08-07 04:04:42 字数 357 浏览 3 评论 0原文

在阅读 ASP.NET MVC 时,我遇到了一些精彩的验证示例,其中业务规则与模型相关联,而 UI 仅显示错误集并标记与无效输入相关联的表单元素。我认为将这种逻辑保留在一个地方而不是让每个表单执行自己独特的验证是非常有意义的。

是否可以通过 ASP.NET Web 应用程序项目 (webforms) 以优雅的方式实现这种分离?我可以将验证规则保留在业务逻辑层中,并且可以使用执行验证并返回一组错误的方法。但我无法找出在 UI 端标记有问题的控件的好方法。

在 MVC 中,表单元素和模型通过属性名称隐式链接。 ASP.NET 中的 UI 是否应该引用模型的唯一属性名称(作为 ID/名称或作为自定义属性)? UI 是否应该能够访问手动生成的控件名称到属性名称的映射?

In reading up on ASP.NET MVC I came across some wonderful examples of validation where the business rules were associated with the model and the UI merely displayed the set of errors and flagged the form elements associated with invalid input. I think it makes fantastic sense to keep this logic in a single place rather than have every form perform its own unique validation.

Is it possible to achieve this separation in an elegant manner with an ASP.NET Web Application project (webforms)? I can keep the validation rules in the business logic layer and I can have methods that perform validation and return a set of errors. But I can't figure out a good way to flag problematic controls on the UI side.

In MVC the form elements and model are implicitly linked by property names. Should the UI in ASP.NET reference the unique property names of the model (either as ID/name or as a custom attribute)? Should the UI have access to a manually-generated mapping of control names to property names?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

灵芸 2024-08-14 04:04:42

我喜欢的一种方法是创建 CustomValidators,绑定到屏幕上的控件,并在 OnServerValidate 事件中调用我的 BL 验证。这样,我的验证逻辑就保留在一个地方。

希望它会有所帮助

A way I like to do it is to create CustomValidators, bound to control on the screen and I call my BL validations in the OnServerValidate event. That way, my validation logic stay in one place.

Hope it will help

来世叙缘 2024-08-14 04:04:42

我确信我记得听说过一些关于数据注释的一些改进将可用于 .NET 4.0 中的 WebForms,但在尝试在线搜索它之后,我开始认为这是我的梦想。

虽然我确实找到了一个“自己动手”的人的帖子:

http://adventuresdotnet.blogspot.com/2009/08/aspnet-webforms-validation-with-data.html

I'm sure I remember hearing some where that some improvements around Data Annotations would be available for WebForms in .NET 4.0, but after trying to search for it online I'm starting to think I dreamt it.

Although I did find this post of a guy that 'rolled his own':

http://adventuresdotnet.blogspot.com/2009/08/aspnet-webforms-validation-with-data.html

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文