问题标签 [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 回答
684 浏览

asp.net - 如何在 VAB 中创建一个同时测试两个属性的自定义验证器?

在我的数据库中,我有一个实体上的复合唯一键约束 (CustomerId, Name)。我想在向数据库提交更改之前测试是否支持唯一约束。用户可以自定义实体上的 Name 属性,因此我想制作一个自定义验证器来验证 name 属性,但是在执行此操作时,我还需要访问 CustomerId 属性。我怎么做?

我正在使用 WCSF,这意味着我被困在 Entlib 3.1 和包含的 VAB 中,但我想可以在不破坏 WCSF 的情况下切换到 EntLib 4.1 的 VAB。

问候,埃吉尔。

0 投票
2 回答
1247 浏览

.net - .NET WinForms 和企业库验证应用程序块

我有一个 TextBox,其值在解析为 int 后传递给对象中的 int 属性。

当我使用 ValidationProvider 时,在验证时会忽略此转换步骤,并且我收到一条错误消息,告诉我无法将字符串保存到 int32。

我可以通过在我的对象中创建一个字符串属性来解决这个问题,该属性充当表单中的文本框值和我的业务对象中的 int 值之间的桥梁,但我不喜欢这种方法,因为它需要更改我的域对象以取悦验证层.

如何验证转换后将其值存储到 int 的文本框,而不在域对象中创建桥属性?

0 投票
3 回答
2918 浏览

c# - 使用 Microsoft EnterpriseLibrary 验证时的堆栈溢出

我有两节课:

DomainObject 有方法的地方:

我正在使用 Microsoft Enterprise Library 4.1 - 2008 年 10 月/.NET 3.5 SP1/Vista。

如果我调用Validate一个新创建的 Country 对象,其中的区域列表为 null,我会收到 StackOverflow 异常。如果我删除 Country.Regions 属性的 [ObjectCollectionValidator(typeof(Region))],一切正常。我猜链接国家 - 地区 - 国家是失败的原因。但是,我不想删除 Regions 集合的验证;从区域中删除 [ObjectValidator] 对我来说都不是一个选项。我可以做些什么来维护所有这些验证属性,没有 StackOverflow 异常?

谢谢,

卢西安

0 投票
1 回答
188 浏览

enterprise-library - 验证器可以与多个规则集相关联吗?

使用 (MS) 企业库、验证应用程序块 (VAB),您可以在代码中包含属性以定义规则集。我已将属性应用于类的属性,并定义了两个规则集(属性分为两个验证组)。不幸的是,这两个规则集之间存在一些重叠(一些属性在两个组中)。

一个验证属性可以属于多个规则集吗?语法是什么样的?如果这不可能,是否有解决方法?

0 投票
2 回答
2459 浏览

.net - 选择哪个验证框架:Spring Validation 或 Validation Application Block (Enterprise LIbrary 4.0)?

我正在尝试为主要应用程序选择一个验证框架,虽然这两个选项看起来都很诱人,但我想知道在选择其中一个之前我应该​​注意哪些特定的优缺点。

0 投票
1 回答
1132 浏览

.net - 验证应用程序块对象验证器不使用规则集

我一直在与这个问题作斗争,我最初认为这可能与影响我的验证的多态性/继承有关,但我把它缩小到这个......

这是类结构..

考试:

如果我删除规则集的内容,则此测试通过。但是一旦应用了规则集,我就无法让对象正确验证。

任何人都可以对此有所了解吗?

干杯,

0 投票
1 回答
323 浏览

.net - 使用 IoC 验证接口

我有一个使用 IoC 和 Microsoft Unity 的域模型。对于验证,我使用 VAB 并装饰界面,而不是实体。代码如下:

如果我直接用 VAB 属性装饰类,则验证有效。如果我仅在界面中使用验证,则不会。这就是我们渲染新实例的方式:

如果验证属性也在类中,则代码有效,否则无效。为什么?

0 投票
2 回答
1099 浏览

.net - 验证应用程序块问题

有没有人使用过企业库中的验证应用程序块?有成功吗?

无论如何,我的问题是关于验证数字唯一标识符。假设我有一个 Product 类,其 ProductId 属性表示产品的唯一标识符。它是数字的。这个标识符不能小于 1,它必须大于 1。我不知道使用验证应用程序块选择什么验证类型。我正在考虑尝试范围类型,但它需要 2 个值,一个较低的值和一个较高的值。

验证业务对象属性的另一个问题。这是测试业务对象的最佳方式吗?我只想指定一次验证规则,然后我想跨不同的层使用它们,比如 ASP.NET。我从来没有以这种方式验证业务对象,只是在客户端。有人可以告诉我最好的路线是什么,如果我的方向正确吗?

有人可以建议吗?

谢谢布伦丹

0 投票
1 回答
427 浏览

configuration - 从内存中的 XML 字符串中读取 EntLib 4.1 配置

我想在我当前的项目中使用 EntLib 4.1,特别是 Unity 1.2 和 VAB。我的应用程序是 SaaS 应用程序,因此我决定将租户特定的配置文件存储在数据库中,以便在租户登录时加载。这些文件包括 VAB 配置和 Unity 配置,以及其他特定于租户的设置。

我找不到任何实用的方法来简单地使用 XML 字符串作为我的 VAB 配置信息。

我首先认为我必须创建 IConfigurationSource 的自定义实现,但后来我意识到我必须复制 FileConfigurationSource 类中已经存在的解析逻辑。

下一个想法是我可以创建一个派生自 FileConfigurationSource 的新类,并使用新类作为代理来传递配置信息而不是带有文件路径的字符串,但我看不到如何覆盖加载文件的地方。

我查看了 SqlConfigurationSource 快速入门示例,但这又不是我真正需要的。

0 投票
1 回答
47185 浏览

c# - “无法加载文件或程序集 'Microsoft.Practices.EnterpriseLibrary.Validation”异常

我目前在尝试使用企业库验证应用程序块时遇到以下异常:

创建用于验证的配置节处理程序时出错:无法加载文件或程序集“Microsoft.Practices.EnterpriseLibrary.Validation, Version=4.1.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35”或其依赖项之一。找到的程序集的清单定义与程序集引用不匹配。(HRESULT 异常:0x80131040)(C:\Documents and Settings\My Documents\Visual Studio 2008\Projects\Testers\TestProject\web.config 第 12 行)

我知道异常试图告诉我什么,但我不知道如何解决它。我只安装了一个版本的企业库,就是它(4.1.0.0),所以我看不出它如何找到错误的版本,所以我想这是一个依赖问题。我已将 Enterprise Library 4.1 中的“Common”、“Validation”和“ObjectBuilder2”DLL 作为项目中的引用包含在内,所以我不确定我还缺少什么。文档当然似乎表明这就是我所需要的。

有没有办法追踪依赖问题是什么?

如果有帮助,我正在尝试使用企业库配置工具来创建验证应用程序块规则集,以验证实体框架实体中的数据。我在 Visual Studio 2008 中使用 ASP.NET MVC。

感谢您提供的任何帮助/指导,

克里斯