chu*_*nce 2 nhibernate nhibernate-validator
必须有一个简单的解决方案,我正在尝试在我的DateTime属性上使用NHibernate Validator属性.如果值为null(via [NotNull]),我希望它验证失败.当我提交一个空值时,它会被转换为,1/1/0001 12:00:00 AM而NHibernate不会将其选为null.我想我可以编写一个自定义验证规则,如果提交该日期则返回false,但是肯定有一个标准的方法吗?
澄清:这是一个示例类,
public class ExampleClass {
[NotNull]
public virtual DateTime MySpecialDateProperty { get; set; }
[NotNullOrEmpty]
public virtual string MyString { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
我有NHibernate Validator设置,所以在我的控制器中,我可以这样做:
newExampleClass.IsValid() 如果它是真的它会在数据库中存在,如果不是,我会返回 newExampleClass.ValidationResults()
当我创建一个新实例时ExampleClass,MySpecialDateProperty初始化为1/1/0001 ...并且验证器不会将其作为空值选择.
编辑2:我应该设置DateTime为nullable(DateTime?),这会阻止NHibernate将值设置为最小DateTime吗?
您需要使用可空类型.DateTime初始化为DateTime.MinValue(1/1/0001).尝试:
[NotNull]
public virtual DateTime? MySpecialDateProperty { get; set; }
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
937 次 |
| 最近记录: |