在我的单元测试中,我在调试时遇到错误。奇怪的是,只要我运行测试,我就不会得到这个(只有在调试测试时)。每当我尝试使用NHibernate Validator验证我的一个实体时,我会得到一个异常。以下行将引发下面的异常。Nhibernate验证器
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
当你在上面的例子中使用NHV这样独立的NHibernate的。这就是为什么我对这个错误感到困惑。每当我构建会话工厂时,我的Fluent配置中都有指定的ProxyFactory类,但此单元测试不使用会话工厂。这也不能解释为什么它不会在调试时抛出相同的错误。 – 2011-04-08 03:59:03