DateTime
値があるかどうかを確認する必要があります。
いくつかのオプションがあります:
if (dateTime == default(DateTime))
また
if (dateTime == DateTime.MinValue)
またはnullableを使用するDateTime?
if (nullableDateTime.HasValue)
個人的には、かなり読みやすいので、3 番目のバージョンを好みます。しかし、私たちのデータベースには、null ではないと定義されている日時列がいくつかあります。そのため、場合によっては最初の 2 つのオプションを使用する必要があります。
ジェネリックを扱うときにキーワードを使用する必要があることをどこかでdefault
読みましたが、この場合ははるかに読みやすくありませんか? 2 番目のオプションを使用する場合、新しい空の DateTime インスタンスのデフォルト値が DateTime.MinValue であることを知っておく必要があります。これには、実装の詳細の匂いがします。
では、「ベスト プラクティス」を使用するにはどのオプションを使用すればよいでしょうか。