gpt4 book ai didi

c# - 使用 JavaScriptSerializer 反序列化 JSON 字符串以返回单个动态对象而不是键和值数组

转载 作者:行者123 更新时间:2023-12-04 13:42:27 25 4
gpt4 key购买 nike

考虑 C# 中的以下 JSON 字符串:

{
"BuyerRegion":"BuyerRegion [0][27]",
"SellerRegion":"SellerRegion [0][29]",
"HubRegion":"HubRegion [0][31]",
"PartNo":"TINT_MNUM [0][3]",
"BuyerCompID":"BuyerCompId [0][28]",
"SellerCompId":"SellerCompId [0][30]",
"HubCompId":"HubCompId [0][32]"
}

然后我尝试使用以下方法将字符串反序列化为 C# 中的动态对象:
object obj = new JavaScriptSerializer().Deserialize<object>(s); //where s contains the JSON string

然而,返回 obj是一个键/值对数组:

enter image description here

知道如何将它们反序列化为一个单独的动态对象,在那里我可以使用以下方法访问属性:
obj.BuyerRegion //returns "BuyerRegion [0][27]"

JsonConvert/NewtonSoft 不是一个选择。

最佳答案

您可以使用 object 代替一些 ModelDto并投给它,我的意思是:

public class ModelDto {
public string Key {get;set;}
public string Value {get;set;}
}

或者您可以使用以下代码通过键从字典中获取值:
string buyerRegion = dict["BuyerRegion"];

或者,您可以按照问题评论中的建议使用 ExpandoObject。

关于c# - 使用 JavaScriptSerializer 反序列化 JSON 字符串以返回单个动态对象而不是键和值数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59782140/

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