nhibernate validator + nhib 구성 요소 + ddl 사용 방법
-
12-09-2019 - |
문제
방금 nhibvalidator를 구성했습니다. 내 nhibernate가 DB 스키마를 만듭니다. maxlenght = "20"을 클래스의 일부 속성으로 설정하면 데이터베이스에서 길이가 데이터베이스 열에 나타납니다. NhibValidator XML 파일 에서이 작업을 수행하고 있습니다. 그러나 문제는 구성 요소가 있고이 동작을 달성하는 방법을 알 수 없다는 것입니다. 구성 요소는 customer.hbm.xml 파일에서 올바르게 구성됩니다.
편집 : 글쎄, 나는 최대 절전 모드 검증기 사용자가 2 년 전에 같은 문제를 겪었다는 것을 알았습니다.http://opensource.atlassian.com/projects/hibernate/browse/hv-25 이것은 nhibernate 유효성 검사기의 문제이거나 고정되어 있습니다. 그것이 작동한다면 어떻게 제발 말해줘.
-----------------------------------------------------
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
업데이트 : 문제가 해결되었습니다.
제휴하지 않습니다 StackOverflow