问题标签 [validation-application-bl]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1226 浏览

.net - Enterprise Library 5.0,抽象基类中的验证

我的业务层使用了一个名为 DomainObject 的抽象基类,它实现了 IDataErrorInfo 来为 WPF 提供验证绑定。当我调用基类中实现的“错误”属性时,没有发现错误(我的测试产生了两个验证错误)。如果我覆盖派生类中的属性,一切都会按预期工作,并且会发现验证错误。我的猜测是“ValidateFromAttributes”方法中的反射问题......?

我的示例应该返回两个错误。

这是我的代码:

这是单元测试:

0 投票
1 回答
358 浏览

.net - 执行业务对象的验证。包含的对象呢?

我是企业图书馆的新手。我正在尝试验证类型的业务对象JuvenileClientContactItem

JuvenileClientContactItem对象本身包含对象,在这种情况下,是类型对象的两个实例AddressType

当我执行以下调用来验证 时JuvenileClientContactItem,我希望所有包含的对象也将被验证,并且PersonType对象中遇到的任何错误都将添加到ValidationResults集合中,但只JuvenileClientContactItem执行了对 oject 的验证。

这是 Enterprise Library Validate 函数的签名:

要验证Address对象中的两个子对象JuvenileClientContactItem,我需要对该Validate方法执行单独的调用,例如:

我很想编写自己的通用验证方法,该方法使用反射来检查传递给验证的对象,寻找支持自我验证的包含对象,并执行调用并将所有验证的结果聚合到一个返回的集合中。有更好的方法吗?

编辑:

按照下面提到的建议,我添加了以下代码:

...并得到 ObjectValidatorAttribute 无法应用的错误,因为该属性在此声明类型上无效。

为什么?我该如何纠正?

0 投票
2 回答
518 浏览

asp.net-mvc - MVC UpdateModel 可以使用 Enterprise Library VAB 吗?

...或者我应该说,将 Enterprise Library 5 VAB 与 MVC 一起使用的最干净的方法是什么?

我目前使用的形式:

可以通过 updatemodel 自动验证 VAB 装饰类,还是手动获取验证器并在调用后验证它?还是有更好的方法?

0 投票
1 回答
270 浏览

dependency-injection - 将值注入自定义 VAB 验证器

我正在构建一个 mvc webapp,它与现有的 winforms 应用程序共享模型对象。我正在将 VAB 验证引入其中。我需要验证的项目之一是可以是 x 级别之一的 int。

我写了一个 LevelValidator,但它需要有可访问的级别。

关于此代码中的调用,看起来我应该注入 LevelValidator 而不是 Levels?其他方法?

0 投票
1 回答
675 浏览

.net - Enterprise Library 4.0 ValidationProvider 自我验证问题

我第一次使用 Validationprovider 控件。我在尝试模仿我在 Ent Lib 安装附带的 ValidationQuickStart 解决方案示例中看到的功能时取得了有限的成功。

虽然我能够根据使用验证属性装饰 BO 属性的业务对象验证来显示表单错误提供程序图标,例如:

但是,如果我想向“SelfValidation”方法添加一个编辑,我将如何将 Result 绑定到表单控件?

还是我必须自己创建 **CUSTOM VALIDATOR?”,然后使用它的类型来装饰业务对象属性?

编辑:

如果 ValidationProvider 控件不适合像这样的跨控件验证:

如果用户在与 Business Option 属性 Customer.DoYouSmokeCrack As Boolean 对应的单选按钮组中选择“是”选项,则 txtHowMuch 控件应标记为 ErrorProvider 图标,指示此字段是有条件的必需字段。

我现在这样做的方式是在自我验证块中执行此操作,当我将 ValidationResult 对象添加到集合时,我将 Key 属性设置为“Explanation”,以便 GUI 可以使用它手动映射到有问题的屏幕控制。

有没有更标准/更好的方法来做到这一点?

0 投票
3 回答
6457 浏览

c# - 使用也接受空的属性验证密码长度?

如果输入密码,我想在编辑时验证密码长度,否则应该认为是空的。

我已经看到建议在编辑模型中跳过密码属性并在代码中进行验证,但我想使用属性进行所有验证。

看来图书馆里应该已经有类似的东西了。我只是错过了吗?
我在 AspNet 3.5 上使用 EntLib 5 VAB 和 MVC 2。

香草编辑模型:

0 投票
3 回答
353 浏览

c# - 验证 VAB 配置文件中的程序集和命名空间

我们正在使用 4.1 版的验证应用程序块。我对它比较陌生,所以我想知道它是否有能力抽象出配置的命名空间和程序集,或者以其他方式对它们的存在提供适当的验证?

我们最近遇到了一个问题,有人移动了一个类并且没有使用新的命名空间更新验证配置文件。结果,验证不再应用于对象。应用程序块似乎只是忽略了差异。不幸的是,这在正常的 QA 周期中没有被发现。有没有内置的方法来保护我们自己免受未来这种类型的变化?我在此期间所做的是加载配置 xml,提取所有程序集和定义的命名空间并验证它们是否都存在。

0 投票
1 回答
1921 浏览

wcf - WCF 服务的 Fluent 验证或 EntLib 验证应用程序块

我正在寻找一种将输入参数验证添加到 WCF 服务集的标准方法。

谁能比较 Fluent 验证http://fluentvalidation.codeplex.com/和 EntLib 验证应用程序块?

它们各自的优点/缺点是什么?

应该使用一个或另一个的场景是什么?

我的问题类似于您会为 .net 项目推荐哪个验证框架?以及选择哪个验证框架:Spring Validation 或 Validation Application Block (Enterprise LIbrary 4.0)?,但这些问题的答案并没有详细的比较。

如果能推荐一些其他类似的技术,我将不胜感激(并说明原因)

有没有人有这两种框架的经验并为他们的项目选择一个?作出决定的原因是什么?

0 投票
2 回答
11081 浏览

wcf - 此故障的创建者未指定原因

我在 WCF 服务的模型中设置了验证属性

当这失败时,我在标题中得到异常,而不是在属性中指定的错误消息。我正在使用 WCF 的验证应用程序块。

方法定义是这样的:

有人可以告诉我我做错了什么吗?

谢谢

0 投票
2 回答
521 浏览

asp.net-mvc - 验证应用程序块 - 如何使用验证元数据类

我正在使用 VAB 来验证一些具有属性的类,并且我正在使用元数据类在不同的类之间共享相同的验证。当我尝试验证控制器中的对象时(顺便说一句,我使用的是 asp.net mvc),ValidationResults没有错误,我的实体不应该是有效的。但是,ASP.NET MVC 发挥了他的魔力,因为ModelState.IsValid它是错误的。我想问题是我进行手动验证的方式。

在 Global.asax 中,我正在加载类和元数据类之间的关联。

全球.ASAX

控制器

或者

欢迎任何想法。

先谢谢了。