c#中的自定义属性,用于比较mvc应用程序中的两个日期属性
我想用复选框比较mvc应用程序中的两个日期属性,我的返回日期不应小于出发日期 我犯了一个错误 “\u RetDate不是有效的命名属性参数,因为它不是有效的属性参数类型” 这是我的密码c#中的自定义属性,用于比较mvc应用程序中的两个日期属性,c#,asp.net-mvc,attributes,data-annotations,custom-attributes,C#,Asp.net Mvc,Attributes,Data Annotations,Custom Attributes,我想用复选框比较mvc应用程序中的两个日期属性,我的返回日期不应小于出发日期 我犯了一个错误 “\u RetDate不是有效的命名属性参数,因为它不是有效的属性参数类型” 这是我的密码 public bool OneWay { get; set; } public bool Return { get; set; } [Required] [Display(Name = "Departure Date")] [ReturnDatenotGreater(_Re
public bool OneWay { get; set; }
public bool Return { get; set; }
[Required]
[Display(Name = "Departure Date")]
[ReturnDatenotGreater(_RetDate = "ReturnDate",ErrorMessage="ReturnDate can't be less that departure date")]
public DateTime DepartureDate { get; set; }
[Display(Name = "Return Date")]
public DateTime ReturnDate { get; set; }
这是我的自定义属性类
public class ReturnDatenotGreaterAttribute : ValidationAttribute
{
public ReturnDatenotGreaterAttribute(DateTime Returdate)
{
_RetDate = Returdate;
}
public DateTime _RetDate { get; set; }
public override bool IsValid(object value)
{
var departuredate= (DateTime)value;
if (departuredate >_RetDate)
{
return false;
}
else
return true;
}
}
我认为你把返程日期安排错了。这可能会有所帮助:。嗨,梅尔克,我看到了你的链接,我找不到匹配的逻辑,请你检查代码并更正它,我的代码哪里有错?我不是这方面的专家。但是,通过快速的谷歌搜索,我发现您可能必须使用a)基本构造函数和b)属性名作为字符串。您的代码似乎在解析/转换字符串
“ReturnDate”
到DateTime
时遇到问题。