gpt4 book ai didi

c# - 服务栈序列化

转载 作者:行者123 更新时间:2023-11-30 15:31:51 25 4
gpt4 key购买 nike

例如我有这个对象

JsonObject o = new JsonObject();
o.Add("k1","0123");
o.Add("k2","123.");

当我序列化这个 json 对象时,结果是错误的:

{
"k1":0123,"k2":123.
}

它假定那些是数字。而这些是不正确的数字。我们在客户端反序列化它们时遇到问题。正确的值应该如下所示:

{
"k1":"0123","k2":"123."
}

我怎样才能做到这一点?如何完全禁用检测数字???

以下配置没有帮助,我认为它们是用于其他目的

JsConfig.TryToParseNumericType = false;
JsConfig.TryToParsePrimitiveTypeValues = false;

最佳答案

JsonObject类派生自 Dictionary<string, string>所以我认为你对此无能为力。您可以创建 Dictionary<string, object> 的实例相反。

[Test]
public void SerializerTest()
{
Dictionary<string, object> o = new Dictionary<string, object>();
o.Add("k1", "0123");
o.Add("k2", "123.");

Assert.AreEqual("{\"k1\":\"0123\",\"k2\":\"123.\"}",
JsonSerializer.SerializeToString(o));
}

关于c# - 服务栈序列化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20089917/

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