взгляните на следующий код, который я пытался написать внутри конструктора:
private Predicate<string> _isValid;
//...
Predicate<string> isValid = //...;
this._isValid = isValid ?? s => true;
Код не компилируется - просто "недопустимый термин выражения" и так далее.
Напротив, он компилируется, и я мог бы просто использовать его:
this._isValid = isValid ?? new Predicate<string>(s => true);
Однако мне все еще интересно, почему этот синтаксис запрещен.
Любые идеи?