0

在我的单元测试中,我在调试时遇到错误。奇怪的是,每当我运行测试时我都没有得到这个(只有在调试测试时)。每当我尝试使用 NHibernate Validator 验证我的一个实体时,都会出现异常。以下行将引发以下异常。

InvalidValue[] invalidValues = validatorEngine.Validate(group);

例外:未配置 ProxyFactoryFactory。使用可用的 NHibernate.ByteCode 提供程序之一初始化会话工厂配置部分的“proxyfactory.factory_class”属性。示例:NHibernate.ByteCode.LinFu.ProxyFactoryFactory、NHibernate.ByteCode.LinFu 示例:NHibernate.ByteCode.Castle.ProxyFactoryFactory、NHibernate.ByteCode.Castle

我正在像这样配置验证器引擎:

var nhvConfiguration = new FluentConfiguration();
        nhvConfiguration
           .SetDefaultValidatorMode(ValidatorMode.OverrideAttributeWithExternal)
           .Register(Assembly.Load("Business.Objects")
           .ValidationDefinitions());

        validatorEngine = new ValidatorEngine();
        validatorEngine.Configure(nhvConfiguration);

我不确定这里发生了什么。任何人都知道为什么我在调试时而不是在运行测试时出现此错误?

我正在使用 NHibernate 3.1 和 NHibernate 验证器 1.3

4

2 回答 2

1

我以前没有使用过 nhibernate 验证器,但是 nHibernate 需要将 ProxyFactory 类指定为配置的一部分,否则它会抛出这种错误

我通常使用 xml 映射文件和配置文件,这是我通常会添加的行 <property name="proxyfactory.factory_class">NHibernate.ByteCode.LinFu.ProxyFactoryFactory, NHibernate.ByteCode.LinFu</property>

任何代理工厂都可以。它归结为偏好。

于 2011-04-08T03:47:38.623 回答
0

它抛出此异常的原因与任何休眠配置无关。以下帖子解释了为什么我会收到此异常。

C#单元测试中未捕获的异常

于 2011-04-15T03:37:32.440 回答