gpt4 book ai didi

json - Serilog 和 ExpandoObject

转载 作者:行者123 更新时间:2023-12-05 02:16:51 34 4
gpt4 key购买 nike

如果我有这样的 ExpandoObject:

dynamic d = new ExpandoObject();
d.x = "a";
d.y = "b";

并使用 JsonFormatter 将其通过 Serilog 记录到 RollingFile,如下所示:

_logger.Debug("{@d}", d);

会像这样序列化成json:

[{"_typeTag":"KeyValuePair`2","Key":"x","Value":"a"},{"_typeTag":"KeyValuePair`2","Key":"y","Value":"b"}]

如果我使用 Newtonsoft.Json 像这样序列化相同的 ExpandoObject:

JsonConvert.SerializeObject(d)

我会得到这个:

{"x":"a","y":"b"}

如何使 Serilog 生成与 Newtonsoft.Json 相同的 json?

最佳答案

添加:

.Destructure.ByTransforming<ExpandoObject>(e => new Dictionary<string,object>(e))

你的 LoggerConfiguration 应该这样做。

关于json - Serilog 和 ExpandoObject,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48958444/

34 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com