Делегат C# – как он принимает дополнительные аргументы, выходящие за рамки его определенияC#

Место общения программистов C#
Ответить Пред. темаСлед. тема
Anonymous
 Делегат C# – как он принимает дополнительные аргументы, выходящие за рамки его определения

Сообщение Anonymous »

Во время работы с книгой Адама Фримана Pro ASP.NET Core я заметил следующее использование метода MapGet("route", RequestDelegate):

Код: Выделить всё

app.MapGet("endpoint/function",
async (HttpContext context, IResponseFormatter formatter) => {
await formatter.Format(context, "Endpoint Function: It is sunny in LA");
});

Код: Выделить всё

IResponseFormatter
был зарегистрирован в DI как синглтон, но я не понимаю, зачем запрашивать делегат со следующим исходным кодом

Код: Выделить всё

public delegate Task RequestDelegate(HttpContext context);
принимает дополнительные аргументы, выходящие за рамки его определения.
Здесь я обнаружил, что это возможно, но когда я попытался создать делегат и функцию с дополнительными параметрами - не сработало.
Поэтому при поиске я не нашел ни документации, ни статей, когда и как работают дополнительные аргументы, чтобы правильно их использовать, не могли бы вы предоставить какие-либо статьи или документацию или какое-либо объяснение? Спасибо за внимание.

Подробнее здесь: https://stackoverflow.com/questions/790 ... definition
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «C#»