我有:Serilog 2.7.1 .NET Framework 4.5.x
我有一个具有不同结构的字符串化JSON。示例:
{
"dto": {
"id": "8d8cc96fa1b44186b28f2a90364e47d2",
"userName": "case6",
"display": true,
"isFullUpdate": false
}
}
我想将其保存为结构化数据-而不是字符串化的JSON。
有2种方法:
具有更好的性能-查找格式化程序“ stringized json”->结构化数据 另一种方法-将其转换为JObject(性能较差)之前-之后转换为结构化数据 JsonConvert.DeserializeObject(myStringifiedJson)->->结构化数据(现在的结果是:
[21:34:27 INF] [[[]],[[]]])
有一个针对netCore 2.0的解决方案-但不适用于.NET Framework 4.5.x (https://github.com/destructurama/json-net) 如果当前行为是错误,请提供重现该问题的步骤,并尽可能提供该问题的最小演示
Log.Logger = new LoggerConfiguration()
.MinimumLevel.Information()
.WriteTo.Console()
.CreateLogger();
var myStringifiedJson = @" {""dto"":{""id"":""8d8cc96fa1b44186b28f2a90364e47d2"",""userName"":""case6"",""display"":true,""isFullUpdate"":false}}";
var myJObject = JsonConvert.DeserializeObject(myStringifiedJson);
Log.Information("{@jobject}", myStringifiedJson); // just plaint text
Log.Information("{@jobject}", myJObject); // [[[]], [[]]])
Log.CloseAndFlush();