C# 是否有可能让Nhibernate阻止“a”;SQLDateTime溢出“-查询数据库时发生异常?

C# 是否有可能让Nhibernate阻止“a”;SQLDateTime溢出“-查询数据库时发生异常?,c#,fluent-nhibernate,C#,Fluent Nhibernate,我想知道是否有可能以通用方式处理SQLDateTime溢出异常,因此每次尝试查询数据库中1753年1月1日之前的日期时,都不会导致异常,而是将超出范围的日期转换为SQL最小日期时间 我只希望它在查询数据库时工作,而不是在插入数据库时。当试图插入错误的日期时,抛出异常是很有意义的,因为这永远不会发生。但在查询时,逻辑上只将时间转换为最短时间是正确的,因为这将返回零结果 我想象这样的事情,但不知道该放在哪里: override DateTime ParseDateTime(DateTime date

我想知道是否有可能以通用方式处理SQLDateTime溢出异常,因此每次尝试查询数据库中1753年1月1日之前的日期时,都不会导致异常,而是将超出范围的日期转换为SQL最小日期时间

我只希望它在查询数据库时工作,而不是在插入数据库时。当试图插入错误的日期时,抛出异常是很有意义的,因为这永远不会发生。但在查询时,逻辑上只将时间转换为最短时间是正确的,因为这将返回零结果

我想象这样的事情,但不知道该放在哪里:

override DateTime ParseDateTime(DateTime date)
{
   var minDate = System.Data.SqlTypes.SqlDateTime.MinValue.Value;
   if (date < minDate)
     return minDate;
   else
     return date;
}
override DateTime ParseDateTime(DateTime日期)
{
var minDate=System.Data.SqlTypes.SqlDateTime.MinValue.Value;
如果(日期
我认为您可以通过自定义IUserType实现(示例-)