这种C#字符串格式的性质是什么?

c#

以下内容来自此 Microsoft 文档。

_logger.LogInformation("Queued Background Task {Guid} is running. " +
                    "{DelayLoop}/3", guid, delayLoop);

这种类型的字符串格式是什么?换句话说,它叫什么,它在哪里记录?它是 .NET 还是需要第三方库?

回答

它是 ASP.NET Core 日志记录 - 或者更一般地说,通过Microsoft.Extensions.Logging.Abstractions.

尽管它看起来有点像 C# 内插字符串文字,但消息实际上是由日志基础结构格式化的。该字符串是一个消息模板。在消息模板中指定的名称是完全独立的后面提供的表达式的-但顺序中的占位符的预计将提供的值的顺序。

这允许日志记录提供提取键/值对以执行结构化日志记录......因此,例如,您可能会以 JSON 格式结束日志条目,如下所示:

{
  "message": "Queued Background Task 1234-5678[...] is running. 100/3",
  "properties": {
    "Guid": "1234-5678[...]",
    "DelayLoop": 100
  }
}

(这取决于日志记录提供程序。)


以上是这种C#字符串格式的性质是什么?的全部内容。
THE END
分享
二维码
< <上一篇
下一篇>>