Nhibernate Validator - PullRequest
       25

Nhibernate Validator

0 голосов
/ 08 апреля 2011

В моих модульных тестах я получаю сообщение об ошибке при отладке. Странно то, что я не получаю это всякий раз, когда просто запускаю тест (это только при отладке теста). Я получаю исключение всякий раз, когда пытаюсь проверить одну из моих сущностей с помощью NHibernate Validator. Следующая строка выдает исключение ниже.

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

Исключение: ProxyFactoryFactory не настроен. Инициализируйте свойство proxyfactory.factory_class раздела конфигурации фабрики сеанса с одним из доступных поставщиков NHibernate.ByteCode. Пример: 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 validator 1.3

Ответы [ 2 ]

1 голос
/ 08 апреля 2011

Я раньше не использовал валидатор nhibernate, но nHibernate нужен класс ProxyFactory, который должен быть указан как часть конфигурации, в противном случае он выдает такую ​​ошибку

Я обычно использую файлы сопоставления xml и файлы конфигурации это строка, которую я обычно добавляю <property name="proxyfactory.factory_class">NHibernate.ByteCode.LinFu.ProxyFactoryFactory, NHibernate.ByteCode.LinFu</property>

Подойдет любой из прокси-фабрик. все сводится к предпочтению.

0 голосов
/ 15 апреля 2011

Причина, по которой это исключение не было связано с какой-либо конфигурацией nhibernate. Следующий пост объясняет, почему я получил это исключение.

C # Неучитанное исключение в модульном тесте

...