Атрибут длины свойства строки NHibernate - PullRequest
1 голос
/ 05 января 2011

Итак, у меня есть файл сопоставления NHibernate со следующим свойством:

<property name="FullName" column="FullName" type="string" not-null="true" />

Если я, например, установлю length = "50", NHibernate будет обрезать строку при вставке в базу данных. Если я удаляю свойство длины, эта база данных генерирует исключение, как и должно быть; говоря, что он не может вставить запись. Это нормальное поведение? Если да, то какова цель свойства длины. Возможно, я неправильно настроил NHibernate или не оцениваю ситуацию. Любые мысли / идеи были бы великолепны.

1 Ответ

5 голосов
/ 06 января 2011

Свойство длины используется для создания базы данных из модели / сопоставлений при использовании экспортера схемы.

Если вы ищете проверку длины строки во время сохранения, посмотрите на проект NHibernate.Validator.

http://nhforge.org/blogs/nhibernate/archive/2009/05/01/nhibernate-validator.aspx

...