C#对象到json-如何构建对象?
序列化json之后,C#对象看起来会是什么样子呢? 已经花了几个小时在这上面了,却不知道如何将电子邮件作为变量?只有一个“潜在客户”和多个孩子C#对象到json-如何构建对象?,c#,json,serialization,C#,Json,Serialization,序列化json之后,C#对象看起来会是什么样子呢? 已经花了几个小时在这上面了,却不知道如何将电子邮件作为变量?只有一个“潜在客户”和多个孩子 { "prospects": { "1234": { "first_name": "New first name", "last_name": "New last name" }, "some@email.com": { "fi
{
"prospects": {
"1234": {
"first_name": "New first name",
"last_name": "New last name"
},
"some@email.com": {
"first_name": "New first name",
"last_name": "New last name"
},
"some.other@email.com": {
"first_name": "New first name",
"last_name": "New last name"
}
}
}
最终结果应该是你的问题是你的“钥匙”是动态的。这意味着您不能硬编码它。试试这个:
public class RootObject
{
[JsonProperty("prospects")]
public Dictionary<string, NameModel> Prospects { get; set; }
}
public class NameModel
{
[JsonProperty("firstName")]
public string FirstName { get; set; }
[JsonProperty("lastName")]
public string LastName { get; set; }
}
Fiddle您是在问如何构建一个可以反序列化示例json的模型,还是如何构建模型来改进示例json?我们需要更多信息。背景是什么?具体是什么?我需要一个模型,在序列化后,输出如所述。@JaroF我不确定如何构建一个模型,就像您在示例中提出的每个值1234一样,some@email.com,一些other@email.com可能是属性名称…我在下面添加了一个答案,我认为这将为您提供一个正确的序列化。您可以使用-,在这里查看
var model = new RootObject()
{
Prospects = new Dictionary<string, NameModel>()
{
{ "1234", new NameModel() { FirstName = "Sam", LastName = "Test" }},
{ "some@email.com", new NameModel() { FirstName = "Sue", LastName = "Test" }},
{ "some.other@email.com", new NameModel() { FirstName = "Frank", LastName = "Test" }},
}
};
{
"prospects": {
"1234": {
"firstName": "Sam",
"lastName": "Test"
},
"some@email.com": {
"firstName": "Sue",
"lastName": "Test"
},
"some.other@email.com": {
"firstName": "Frank",
"lastName": "Test"
}
}
}