Какова цель «() =>» в лямбда-выражении c #

Я пытался понять это, и это действительно беспокоит меня. У меня есть код, который выглядит так

static T MyFunction<T>(Func<T> action, int i, int i2)
{
    ...some code here
}

Когда мне нужно вызвать этот код, я попробовал это

var result = MyFunction<List<string>>(MethodThatReturnsListofString(int number), 1,2)

Он не утверждает, что лучшая перегрузка имеет недопустимые аргументы. Но когда я попробовал следующее

var result = MyFunction<List<string>>(() => MethodThatReturnsListofString(int number), 1,2)

Работает нормально. Какова функция "() =>" в этом случае. Я думал () не может быть использован с методами, требующими более 0 аргументов.

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

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