Я пытаюсь отследить / записать некоторую информацию о процессе отправки сообщений, над которым я работаю.
Когда вы пытаетесь использовать объект конкретной позиции из массива аргументов более одного раза, это вызывает исключение.
private void LogRandomInfo(ILogger Log, string processName, string messageType)
{
try
{
Log.LogInformation("{0} : The event {0} has received the info {1}", processName, messageType);
}
catch (Exception ex)
{
throw ex;
}
}
Я ожидал чего-то похожего, как когда мы используем string.Format
.В string.Format
вы можете печатать столько раз, сколько запрошено значение.
Поэтому string.Format("{0} {0} {0}", 1);
будет печатать 1 1 1
, но Log.LogInformation("{0} {0} {0}", 1);
выдаст исключение типа Index за пределами границ массива.
Есть ли какое-нибудь простое объяснение, почему это происходит?
Использовалась библиотека журналирования Microsoft.Extensions.Logging