我有这个.json文件我想用字典创建一个类。 下面你会发现课程。 我想和字典一起工作。 有谁知道我将如何重建类以及如何读取.json文件?
{
{ "Schlagwortmaskname": "Verpackungstisch"}
"Schlagwort": [
{
"Name": "Fertigungsauftrag",
"Wert": "4594"
},
{
"Name": "Kundenauftrag",
"Wert": "Smith"
},
{
"Name": "Produktname",
"Wert": "Jones "
},
{
"Name": "Artikelnummer",
"Wert": "Jones "
},
{
"Name": "Seriennummer",
"Wert": "Jones "
},
{
"Name": "Kunde",
"Wert": "Jones "
},
{
"Name": "Endkunde",
"Wert": "Jones "
},
{
"Name": "Musterbild",
"Wert": "1"
},
{
"Name": "Kommentar",
"Wert": "Jones "
},
{
"Name": "Repair Artikelnummer",
"Wert": "Jones "
},
{
"Name": "Erstellt am",
"Wert": "10.12.2012 15:15:15"
}
]
}
public class Informationen
{
public string Name { get; set; }
public string Wert { get; set; }
}
public class Rootobject
{
public string Schlagwortmaskname { get; set; }
public IList<Informationen> Informationen { get; set; }
}
答案 0 :(得分:1)
你可以达到你想要的结果:
static void Main(string[] args)
{
var values = JsonConvert.DeserializeObject<RootObject>(json);
var dictionary = values.Schlagwort.ToDictionary(x => x.Name, y => y.Wert);
}
public class Informationen
{
public string Name { get; set; }
public string Wert { get; set; }
}
public class RootObject
{
public string Schlagwortmaskname { get; set; }
public IList<Informationen> Schlagwort { get; set; }
}
请注意,正如Jon Skeet指出的那样,您将无法再次序列化回JSON。我没有真正看到在模型上使用Dictionary
的好处。但是这样,您可以使用普通模型和可以使用的字典。否则,您必须编写自己的反序列化器才能使其正常工作。
最后,您的JSON无效。修复如下:
{
"Schlagwortmaskname": "Verpackungstisch",
"Schlagwort": [{
"Name": "Fertigungsauftrag",
"Wert": "4594"
}, {
"Name": "Kundenauftrag",
"Wert": "Smith"
}, {
"Name": "Produktname",
"Wert": "Jones "
}, {
"Name": "Artikelnummer",
"Wert": "Jones "
}, {
"Name": "Seriennummer",
"Wert": "Jones "
}, {
"Name": "Kunde",
"Wert": "Jones "
}, {
"Name": "Endkunde",
"Wert": "Jones "
}, {
"Name": "Musterbild",
"Wert": "1"
}, {
"Name": "Kommentar",
"Wert": "Jones "
}, {
"Name": "Repair Artikelnummer",
"Wert": "Jones "
}, {
"Name": "Erstellt am",
"Wert": "10.12.2012 15:15:15"
}]
}