Из C # / .NET Little Wonders: члены с выражением в C # 6 :
Итак, вы должны использовать это? Все сводится к стилю. Моя интуиция заключалась бы в том, чтобы ограничить это простыми выражениями и утверждениями, которые можно ясно понять с первого взгляда.
(выделение мое; см. обновление 1 ниже)
Больше из резюме статьи выше:
Таким образом, C # 6 теперь дает нам возможность указывать свойства и методы только для get с выражениями. Это может помочь снизить нагрузку на синтаксис очень простых методов, чтобы сделать ваш код более лаконичным.
Однако, со всеми вещами, используйте свое суждение о том, подходит ли оно для любой конкретной ситуации. Когда выражение очень длинное или сложное, использование синтаксиса всего тела может быть более читабельным.
И еще одна цитата о производительности, потому что проблемы с производительностью также могут сказываться, когда уместно использовать определенную языковую функцию:
Теперь, вы можете спросить, это влияет на производительность во время выполнения? На самом деле ответ - нет . Это просто синтаксический сахар, который расширяется до того же IL, что и полный текст. Он не создает делегата, он просто заимствует синтаксис лямбда-выражения, чтобы упростить написание простых тел, которые приводят к выражению.
(акцент, автор)
Обновление 1: @ JörgWMittag сказал
Это не имеет никакого смысла. "ограничить это простыми выражениями и утверждениями"? А? Он даже не работает с утверждениями, только с выражениями!
Похоже, что первоначальный автор мог ошибиться. Чтобы уточнить, из новой и улучшенной C # 6.0 :
Функции тела выражения - еще одно упрощение синтаксиса в C # 6.0. Это функции без тела оператора. Вместо этого вы реализуете их с помощью выражения, следующего за объявлением функции.
Чтобы было ясно, это не делает метод или свойство выражением . Он использует синтаксис Expression для сокращения строк кода (и количества фигурных скобок).
Моя первоначальная рекомендация остается в силе: используйте ее, когда она делает ваш код очевидным и легче для понимания, а не просто потому, что вы можете его использовать.