验证日期在SqlDbType.DateTime范围内

Ed *_*d I 6 c# sql-server ado.net datetime sqldbtype

我想在将其作为参数添加到我的SqlCommand实例之前验证System.DateTime值.

SqlDbType枚举的MSDN文档说:

日期和时间数据的范围从1753年1月1日到9999年12月31日,精确到3.33毫秒.

为了验证价值,我正在使用

public readonly DateTime SqlDateTimeMin = new DateTime(1753, 1, 1);
public readonly DateTime SqlDateTimeMax = new DateTime(9999, 12, 31);

if (value < SqlDateTimeMin || value > SqlDateTimeMax)
    // Validation check fails
else
    // Validation check succeeds
Run Code Online (Sandbox Code Playgroud)

这是最好的方法吗?有没有替代硬编码这些最小值和最大值?

gbn*_*gbn 19

什么SqlDateTime.MinValueSqlDateTime.MaxValue

注意:这些是SQL类型min/max而不是.net类型,如前2个答案:-)