Почему троичный оператор C # не работает с делегатами?

При переходе к выбору функции может иметь смысл использовать троичный оператор для выбора функции, но это невозможно. Зачем?

public class Demo {
    protected bool branch;
    protected void demo1 () {}
    protected void demo2 () {}
    public Action DoesntWork() {
        return branch ? demo1 : demo2;
    }
}

Компилятор выдает следующую ошибку:

Cannot implicitly convert type `method group' to `System.Action'

Ответы на вопрос(2)

Ваш ответ на вопрос