我可以让NHibernate强制执行字符串属性非空吗?

时间:2009-04-19 12:36:16

标签: nhibernate

我知道not-null属性。是否有一个强制执行字符串属性的最小长度?我不想在我的数据库中使用空字符串。

2 个答案:

答案 0 :(得分:2)

我不知道映射文件中有什么可以让你这样做(我在模式中看不到任何内容)。您可以使用NHibernate.IUserType定义自定义类型,并将您的逻辑构建到该类型中(如果字符串为空,则保存为null)。构建IUserType的Here is an example(可以很容易地将此​​示例代码更改为适合您)

另一个选择是利用NHibernate.Validations并在到达将实体保存到数据库之前处理验证逻辑。

答案 1 :(得分:0)

您正在寻找NHibernate Validator!有一篇博文here展示了它的一些优点。