Ярлык для «null, если объект равен нулю, или object.member, если объект не равен нулю» [duplicate]

На этот вопрос уже есть ответ здесь:

Глубокая проверка нуля, есть ли лучший способ? 16 ответовКак проверить наличие нулей в глубоком лямбда-выражении? [Дубликат] 10 ответов

Я пытаюсь написать общий метод расширения, который позволяет мне сделать это:

this.startDate = startDateXAttribute.NullOrPropertyOf<DateTime>(() =>
{
    return DateTime.Parse(startDateXAttribute.Value);
});

NullOrPropertyOf()&nbsp;вернетсяnull&nbsp;если он используется наnull&nbsp;объект (например, еслиstartDateXAttribute&nbsp;былоnull) или вернуть результатFunc&nbsp;если это не ноль.

Как бы выглядел этот метод расширения?