如何在 VAB 中创建同时测试两个属性的自定义验证器?
在我的数据库中,我对实体有一个复合唯一键约束(CustomerId、Name)。 我想在向数据库提交更改之前测试是否支持唯一约束。 用户可以自定义实体上的 Name 属性,因此我想创建一个验证 name 属性的自定义验证器,但在执行此操作时,我还需要访问 CustomerId 属性。 我怎么做?
我正在使用 WCSF,这意味着我陷入了 Entlib 3.1 和包含的 VAB,但我想可以在不破坏 WCSF 的情况下切换到 EntLib 4.1 的 VAB。
问候,埃吉尔。
In my database, I have a composite unique key constraint (CustomerId, Name) on a entity. I want to test if the unique constraint is upheld before submitting changes to the database. The user can customize the Name attribute on the entity, so I would like to make a custom validator that validates the name property, but while doing it, I need access to the CustomerId property as well. How do I do that?
I an using WCSF, which means I am stuck in Entlib 3.1 and the included VAB, but I guess it is possible to switch to EntLib 4.1's VAB without breaking WCSF.
Regards, Egil.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
诀窍是为您的实体创建验证器,而不是为该实体的属性之一创建验证器。 您可以在您的实体上编写自我验证,如下所示:
我必须说我不熟悉 VAB 3.1 的功能集,所以我不能 100% 确定这适用于 3.1。 不过它可以在 4.1 上运行。 如果您不喜欢自我验证,您还可以编写自定义验证器并将其挂接到配置文件中。 看看这个stackoverflow答案 了解有关如何执行此操作的更多信息。
The trick is to create a validator for your entity, not for one of the properties of that entity. You can write a self validation on your entity as follows:
I must say I'm not familiar with the feature set of VAB 3.1, so I'm not 100% sure this works on 3.1. It works on 4.1 though. If you don't like self validation, you can also write a custom validator and hook it up in the configuration file. Look at this stackoverflow answer for more info on how to do this.