Как использовать Nhibernate Validator + компонент NHib + ddl
-
12-09-2019 - |
Вопрос
Я только что настроил свой NHibValidator.Мой nhibernate создает схему БД.Когда я устанавливаю maxlenght = "20" какое -то свойство класса, то в базе данных появляется длина в столбце базы данных.Я делаю это в файле nhibvalidator xml.Но проблема в том, что у меня есть компоненты и не могу понять, как достичь такого поведения.Компонент правильно настроен в файле customer.hbm.xml.
РЕДАКТИРОВАТЬ:Что ж, я обнаружил, что у пользователей warmernate vedulator была такая же проблема два года назад.http://opensource.atlassian.com/projects/hibernate/browse/HV-25 Это проблема для NHibernate Validator или она исправлена.Если это работает, скажите мне, как пожалуйста.
-----------------------------------------------------
public class Customer
{
public virtual string Name{get;set;}
public virtual Contact Contacts{ get; }
}
-----------------------------------------------------
public class Contact
{
public virtual string Address{get;set;}
}
-----------------------------------------------------
<?xml version="1.0" encoding="utf-8" ?>
<nhv-mapping xmlns="urn:nhibernate-validator-1.0"
namespace="MyNamespace"
assembly="MyAssembly">
<class name="Customer">
<property name="Name">
<length max="20"/>
</property>
<property name="Contacts">
<notNull/>
<valid/>
</property>
</class>
</nhv-mapping>
-----------------------------------------------------
<?xml version="1.0" encoding="utf-8" ?>
<nhv-mapping xmlns="urn:nhibernate-validator-1.0"
namespace="MyNamespace"
assembly="MyAssembly">
<class name="Contact">
<property name="Address">
<length max="50"/>
<valid/>
</property>
</class>
</nhv-mapping>
-----------------------------------------------------
Решение
Ну, это должно быть ошибкой.Я разместил это в системе отслеживания проблем NHibernate.
https://nhibernate.jira.com/browse/NHV-82
ОБНОВЛЯТЬ:проблема решена.