C# - 年度低于1753年的验证

时间:2018-04-05 21:20:47

标签: c# sql datetime

SQL接受最小日期年份值1753。

我有下面的代码,我希望验证这一年,但事实并非如此。

args.IsValid = DateTime.TryParseExact(args.Value.Trim(), "MM/dd/yyyy", System.Globalization.CultureInfo.InvariantCulture, System.Globalization.DateTimeStyles.None, out test);

我该如何解决这个问题?我需要检查格式是mm / dd / yyyy以及有效月份,日期还是年份

1 个答案:

答案 0 :(得分:0)

您目前正在检查的是该值是否可以解析。如果您想要检查有关该值的内容,则必须以正常情况执行此操作。幸运的是,您可以使用&& (condition)轻松完成此操作。例如:

args.IsValid = DateTime.TryParseExact(args.Value.Trim(), "MM/dd/yyyy",
    CultureInfo.InvariantCulture, DateTimeStyles.None, out test) &&
    test.Year >= 1753;

(如果你真的需要检查年份至少是1753年.Zohar Peled的评论对你来说可能更有用,建议更好的字段类型,或者纠正你对这种类型的误解使用。)