NHibernate字符串属性长度属性

dol*_*phy 1 nhibernate nhibernate-mapping

所以我有一个带有以下属性的NHibernate映射文件:

<property name="FullName" column="FullName" type="string" not-null="true" />
Run Code Online (Sandbox Code Playgroud)

例如,如果我设置length ="50",NHibernate将在插入数据库时​​截断字符串.如果我删除了length属性,那么该数据库会抛出异常; 说不能插入记录.这是正常的行为吗?如果是这样,长度属性的目的是什么.也许我已经错误地配置了NHibernate或者没有意识到这种情况.任何想法/想法都会很棒.

Dmi*_* S. 5

当您使用模式导出器时,Length属性用于从模型/映射创建数据库.

如果您在持久性期间寻找字符串长度验证,请查看NHibernate.Validator项目.

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