C# newtonsoft升级到版本10后,JSON返回数组而不是整数数据类型
预期结果:C# newtonsoft升级到版本10后,JSON返回数组而不是整数数据类型,c#,json,json.net,C#,Json,Json.net,预期结果: "sections": [ { "sectionName": "Test Data", "sectionOrder": 1, "sectionColumn": 1 } ] 实际结果: "sections": [ { "sectionName": [],
"sections": [
{
"sectionName": "Test Data",
"sectionOrder": 1,
"sectionColumn": 1
}
]
实际结果:
"sections": [
{
"sectionName": [],
"sectionOrder": [],
"sectionColumn": []
}
]
我假设newtonsoft导致了数据类型的问题。
我正在序列化一个节并返回JSON,如下所示:
var serializer = new JavaScriptSerializer();
var result = serializer.Serialize(testdata);
调试时,它会在sectionOrder和sectionColumn的结果中显示整数值,但邮递员会以空数组的形式显示结果。
结果中没有任何异常
带空数组的邮递员结果
问题到底是什么?您清楚地声明:“调试时,它会在sectionOrder和sectionColumn的结果中显示整数值”-这只能解释为“代码正常工作”-但PostMan不会。这是一个邮差问题吗?你说的是NewtonSoft,有Json.net标记,但代码使用
System.Web.Script.Serialization.JavaScriptSerializer
。我们可以进行testdata
对象初始化吗?和System.Web.Script.Serialization.JavaScriptSerializer
现在被弃用(2009年),因为文档说明:“对于.NET Framework 4.7.2及更高版本,应使用System.Text.Json命名空间中的API进行序列化和反序列化。对于.NET Framework的早期版本,请使用Newtonsoft.Json。”好吧,糟糕的是,它在2009年2月就过时了。现在不是了。但是他们强烈建议你使用其他任何东西。你能展示你正在序列化的类吗?邮递员的例子中应该有价值吗?@AvinashM-请你的问题包括一个重现问题的例子?请参阅:帮助他人重现问题。。。如果你的问题是你写的代码,你应该包括一些…包括足够的代码,让其他人重现问题。例如,如果您试图用JavaScriptSerializer
序列化一个JObject
,您可能会得到类似于所显示的内容。也许不会,我不确定。A将说明这一点。