Если я предоставлю слишком много параметров для вызова ilogger.loginformation , например, _logger.loginformation ("{a}", a, b); , Visual Studio смачивает параметр b и показывает, что «аргумент не используется в шаблоне сообщений».
Аналогично ,, _logger.loginformation ("{a} {b}", a); добавляет "queggly line" под {b} Показ «не существующий аргумент в шаблоне сообщений». количество названных заполнителей ". < /p>
взглянуть на подпись Microsoft.extensions.logging.loggerextensions.loginformation , однако, его подписью является общедоступным входом в систему void (этот ilogger logger, string? Message, объект Params? [] Args) . У него нет никаких атрибутов или других признаков того, что существует какая -либо особая связь между сообщением и args .
Итак, как IDE распознает несоответствие количества параметров ? Это то, что можно сделать с другими методами, например, Пользовательские расширения на ilogger с аналогичной подписью?
Подробнее здесь: https://stackoverflow.com/questions/794 ... template-s