私は、NULL可能なDateTimeを返すWEBApiからの応答の契約をしています。しかし、DateTimeのみにする必要があり、nullの場合はDateTime.MaxValueという値にします。DateTimeの変換? DateTime to C#のセッター関数
private DateTime endDate;
public DateTime? EndDate
{
get { return endDate; }
set
{
if (value == null)
endDate = DateTime.MaxValue;
else
{
endDate = value;
}
}
}
しかし、この方法では明示的にDateTimeを変換する必要がありますか?私のコード全体でDateTimeに。では、セッター機能がどのように機能するのだろうかと思っていましたか?最初に初期化され、次にDataTypeがチェックされますか?その場合は、上記のコードを次のコードに置き換えることができます。
private DateTime endDate;
public DateTime EndDate
{
get { return endDate; }
set
{
if (value == null)
endDate = DateTime.MaxValue;
else
{
endDate = value;
}
}
}
これは可能ですか?あるいは、デシリアライズ中にDataTypeチェックの後にSetter関数が呼び出されるのでしょうか?
デフォルトの外観はどうですか? 'DateTime.MaxValue'? – nozzleman
はい、デフォルトはDateTime.MaxValueです –
私はあなたの唯一のオプションはヌル合体演算子を使用することだと思います。 – NoviceProgrammer