2012-03-20 4 views
0

generelの方法でSQLDateTimeオーバーフロー例外を処理することが可能かどうかは疑問です.751年1月1日より前の日付のデータベースを照会しようとするたびに、例外が発生することはありません。代わりに範囲外の日付をSQLの最小DateTimeに変換するだけです。Nhibernateにデータベースを照会する際に "SQLDateTime overflow" - 例外を防ぐことは可能ですか?

データベースを照会するときにのみ作業したい - 挿入するときではない。間違った日付を挿入しようとすると、例外が発生することはありません。しかし、クエリを実行すると、時間が最小時間に変換されるのが論理的に正しいでしょう。これはゼロの結果を返すためです。

私はこのようなものを想像しますが、それをどこに置くか知らない:

override DateTime ParseDateTime(DateTime date) 
{ 
    var minDate = System.Data.SqlTypes.SqlDateTime.MinValue.Value; 
    if (date < minDate) 
    return minDate; 
    else 
    return date; 
} 

答えて

関連する問題