我想将这个JSON反序列化为一个C#类,但我需要首先定义这个类:
{
"Prods": [
{
"ID": {
"1001": [
{
"Name": "Name1",
"Prod": "XXX"
},
{
"Name": "Name2",
"Prod": "XXXX"
}
]
}
},
{
"ID": {
"2001": [
{
"Name": "Name3",
"Prod": "XXX-000"
},
{
"Name": "Name4",
"Prod": "XXXX-1111"
}
]
}
}
]
}
我想将它反序列化为如下所示,但不确定我的JSON结构是否适合它:
public class Prod
{
int CATID;
Dictionary<string, string> prods = new Dictionary<string, string>();
}
public class Prods
{
public List<Prod> Products {get;set;}
}
我应该如何更改上面的JSON以适应下面的类,这样我就可以使用JsonConvert来反序列化它了?
谢了!
在我看来,您的JSON只是看起来不对,因为您并不总是具有“一致”的名称/值对。首先,我将像下面这样定义我的JSON
{
"Prods":
[{
"ID": "1001",
"Items":
[{
"Name": "Name1",
"Prod": "XXX"
},
{
"Name": "Name2",
"Prod": "XXXX"
}]
},
{
"ID": "2001",
"Items":
[{
"Name": "Name3",
"Prod": "XXX-000"
},
{
"Name": "Name4",
"Prod": "XXXX-1111"
}]
}]
}
然后我将使用以下类来处理数据
public class Item {
public string Name { get; set;}
public string Prod { get; set;}
}
public class Product {
public string ID { get; set;}
public List<Item> Items { get; set; }
}
public class Products {
public List<Product> Prods { get; set; }
}
然后我会使用json.net之类的东西来处理序列化
问题内容: 有什么简单的方法可以生成这样的JSON吗?我发现了和,所以我可以递归地降级到目录中并构建一个python对象,但这听起来像是在重新发明轮子,也许有人知道这样的任务的工作代码? 问题答案: 我不认为这个任务是一个“轮子”(可以这么说)。但这可以通过您提到的工具轻松实现:
问题内容: Json字符串: C#类: C#将json转换为电影的c#列表: 我的变量最终是一个计数为0的空列表。我是否缺少某些内容? 问题答案: 您的C#类映射与json结构不匹配。 解决方案:
问题内容: 我想创建一个包含我的类的实例变量的JSON字符串。 例如, 会成为: 我研究了几个用于创建JSON的C ++库,它们似乎都异常复杂。我想要类似Javascript的东西。换句话说,只需将std :: map传递给它并接收一个字符串。该地图可能包含其他地图,向量,列表,字符串,数字和布尔值。 最好的方法是什么? 谢谢你的帮助。 编辑 我研究了以下内容: json spirit,jsonc
问题内容: 我有一个想要表示为C#类的复杂JSON对象。我在名为“ Form”的父类上有一个良好的开端,但是如何代表不同类型的集合(请参见下面的“ elements”对象)? 这是JSON对象: 我开始的课程看起来像这样: 如何处理“ elements”属性以获得所需的JSON输出? 我正在WCF 4.0和web.config中的以下属性一起使用:automaticFormatSelectionE
问题内容: 我想将json字符串转换为对象列表。请帮我。如果由来完成,那会更有帮助。 我试过了,但是没有用。我不想要该json的所有值。MatrixModel中提到的 这是一个对象 这是Json String 问题答案: 您可以使用json2csharp.com将json转换为对象模型 将您的JSON粘贴到Box中。 单击“生成”。 您将为您的对象模型获得C#代码 通过使用 NewtonJson*
问题内容: 我正在尝试在此链接中使用示例 http://sharpdevpt.blogspot.com/2009/10/deserialize-json- on-c.html?showComment=1265045828773#c2497312518008004159 但是我的项目无法使用JavaScriptConvert.DeserializeObject进行编译,该示例说这是来自.net库,有