Маркер => поддерживается в двух формах: как лямбда-оператор и как разделитель имени члена и реализации члена в выражении определение тела.
Лямбда-оператор
В лямбда-выражениях лямбда-оператор => отделяет входные переменные с левой стороны от тела лямбда-выражения с правой стороны.
В следующем примере функция LINQ с синтаксисом метода используется для демонстрации использования лямбда-выражений:
string[] words = { "bot", "apple", "apricot" };
int minimalLength = words
.Where(w => w.StartsWith("a"))
.Min(w => w.Length);
Console.WriteLine(minimalLength); // output: 5
Определение тела выражения
Определение тела выражения имеет следующий общий синтаксис:
member => expression;
где выражение является допустимым выражением. Обратите внимание, что выражение может быть выражением оператора только в том случае, если возвращаемый тип члена имеет тип void или член является конструктором, финализатором или средством доступа к набору свойств.
В следующем примере показано определение тела выражения для метода Person.ToString:
public override string ToString() => $"{fname} {lname}".Trim();
Это сокращенная версия следующего определения метода:
public override string ToString()
{
return $"{fname} {lname}".Trim();
}