Come utilizzare componente NHibernate Validator + NHib + ddl
-
12-09-2019 - |
Domanda
Ho appena configurato il mio NHibValidator. Il mio NHibernate crea il DB schema. Quando ho creato MaxLenght = "20" in una certa proprietà di una classe in poi il database della lunghezza appare nella colonna di database. sto facendo questo nel file XML NHibValidator. Ma il problema è che non ho componenti e non riesco a capire come raggiungere questo comportamento. Il componente è stato configurato correttamente nel file Customer.hbm.xml.
EDIT: Beh, ho trovato che gli utenti di Hibernate Validator avuto lo stesso problema due anni fa. http://opensource.atlassian.com/projects/hibernate/browse/HV- 25 E 'questo un problema per NHibernate Validator o è fisso. Se è lavoro dimmi come si prega.
-----------------------------------------------------
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>
-----------------------------------------------------
Soluzione
Bene, questo dovrebbe essere un bug. Ho postato questo per NHibernate issue tracker.
https://nhibernate.jira.com/browse/NHV-82
UPDATE:. Il problema è stato risolto