Я только что настроил свой NHibValidator. Мой NHibernate создает схему DB . Когда я устанавливаю MaxLenght = "20" в какое-либо свойство класса, то в в базе данных длина отображается в столбце базы данных. Я делаю это в XML-файле NHibValidator. Но проблема в том, что у меня есть компоненты и не могу понять, как добиться такого поведения. Компонент настроен правильно в файле Customer.hbm.xml.Как использовать Nhibernate Validator + NHib компонент + ddl
EDIT: Ну, я обнаружил, что пользователи Hibernate Validator имели такую же проблему два лет назад. 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>
-----------------------------------------------------