我创建了以下属性:DataTypeAttribute是显示错误信息
public class SpecificDataTypeAttribute : DataTypeAttribute
{
public SpecificDataType(DataType dataType, string field)
: base(dataType)
{
this.ErrorMessage = string.Format("{0} {1}", field, Messages.SpecificDataTypeAttribute);
}
}
而且使用像:
[SpecificDataType(DataType.DateTime, "Initial date")]
public DateTime? InitialDate { get; set; }
所以,这就是在Messages.SpecificDataTypeAttribute
消息是"is in a incorrect format."
。当我在InitialDate中输入错误的日期时,我得到了默认错误:"The value '12' is not valid for InitialDate."
。为什么?我把断点和代码调用SpecificDataType ctor。
我想这是因为'DateTime?'实际上是'可空'而不是普通的'DateTime'。如果你声明的初始日期为'public DateTime InitialDate {get; set;}' –
2012-04-05 12:15:31
没有任何改变,看看它是否工作。保持相同的错误。 – 2012-04-05 12:26:14
啊,我没有真正阅读你的问题与理解:)我以前的评论可以被抓。无论如何,我现在所拥有的最多是一个模糊的理论,并不知道如何规避这个问题,所以我会把话题留给比我更聪明的人。 :) – 2012-04-05 12:41:49