Why we cannot write something like that:
Func<int, int> operation = i == 1
? (int a, int b) => a + b
: (int a, int b) => a * b;
Type of conditional expression cannot be determined because there is no implicit conversion between 'lambda expression' and 'lambda expression'