Може хтось пояснить, чому це працює в C # .NET 2.0:
Nullable<DateTime> foo;
if (true)
foo = null;
else
foo = new DateTime(0);
... але це не так:
Nullable<DateTime> foo;
foo = true ? null : new DateTime(0);
Остання форма дає мені помилку компіляції: "Тип умовного вираження неможливо визначити, оскільки немає неявного перетворення між" <null> "та" System.DateTime "."
Не те, що я не можу використовувати перший, але другий стиль більше відповідає решті мого коду.