如果我有以下这样的ExpandoObject对象:
如果我使用Newtonsoft.Json对ExpandoObject进行如下序列化:
我会得到这个:
我该如何让Serilog生成与Newtonsoft.Json相同的JSON格式?
dynamic d = new ExpandoObject();
d.x = "a";
d.y = "b";
并使用JsonFormatter将其记录在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格式?
{["x"]="a", ["y"]="b"}
,最好是在键周围没有方括号。 - AndrewJsonConvert.DeserializeObject()
反序列化一个JSON字符串"{\"x\":\"a\",\"y\":\"b\"}"
,得到的对象日志输出为[[[]],[[]]]
。显然我期望得到的是{"x":"a","y":"b"}
。 - Andrew