Лично я не в восторге от неявных операторов, но они показывают, что ваши требования могут быть выполнены. Конечно, нет необходимости в другой языковой функции.
н ли C # иметь ленивое ключевое слово, чтобы облегчить ленивую инициализацию?
Например.
public lazy string LazyInitializeString = GetStringFromDatabase();
вместо
private string _backingField;
public string LazyInitializeString
{
get
{
if (_backingField == null)
_backingField = GetStringFromDatabase();
return _backingField;
}
}