C# JSON.net不使用模式反序列化JSON

C# JSON.net不使用模式反序列化JSON,c#,json,unity3d,C#,Json,Unity3d,我有一些建议: { "739c39e": [7866679, 31.96051, 117.13700, 310, 30100, 408, 20515, 2955, "A319", "B-6429", 1440504861, "SHA", "XIY", "MU2168", 0, 0, "CES2168", 0], "739d433": [5242971, 51.46741, -0.48536, 270, 0, 16, 0, 2529, "A320", "T7-MRD", 14

我有一些建议:

{
    "739c39e": [7866679, 31.96051, 117.13700, 310, 30100, 408, 20515, 2955, "A319", "B-6429", 1440504861, "SHA", "XIY", "MU2168", 0, 0, "CES2168", 0],   
    "739d433": [5242971, 51.46741, -0.48536, 270, 0, 16, 0, 2529, "A320", "T7-MRD", 1440504861, "LHR", "BEY", "ME202", 1, 0, "MEA202", 0]
}
我试图反序列化这个,但没有太多的运气

我试过:

 var definition = new { a = "", b = "", c = "", d = "", e = "", f = "", g = "", h = "", i = "", j = "", k = "", l = "", m = "", n = "", o = "", p = "", q = "", r = "" };
 var jsonData = @File.ReadAllText(@filepathToData);
 dynamic deserializedData = JsonConvert.DeserializeAnonymousType(jsonData, definition);
我从来没有想过这会起作用,因为JSON中没有“定义”。 我还尝试了
JArray.Parse(jsonData)方式,但我什么也得不到

我还尝试了
JsonConvert.DeserializeObject(jsonData)但这不会返回任何内容。。。或者至少我无法使用Visual Studio(2015)检查返回的对象

有人有什么想法吗


我在Unity3D中这样做,如果有什么不同的话。

您可以将其反序列化为动态对象,如下所示:

dynamic o = JsonConvert.DeserializeObject(json);
Console.WriteLine(o["739c39e"]);
Console.WriteLine(o["739c39e"][3]); // output: 310

您可以将其反序列化为动态对象,如下所示:

dynamic o = JsonConvert.DeserializeObject(json);
Console.WriteLine(o["739c39e"]);
Console.WriteLine(o["739c39e"][3]); // output: 310
你可以试试这个

var o = JsonConvert.DeserializeObject<Dictionary<string, object[]>>(json);
o.Dump();
var o=JsonConvert.DeserializeObject(json);
o、 Dump();
您可以试试这个

var o = JsonConvert.DeserializeObject<Dictionary<string, object[]>>(json);
o.Dump();
var o=JsonConvert.DeserializeObject(json);
o、 Dump();

您的数据是一个字典,但定义是一个数组。因此,可以将其更改为:var definition=newdictionary(字符串键,new{a=”“,b……}您的数据是一个字典,但您的定义是一个数组。因此,可以将其更改为:var definition=newdictionary(字符串键,new{a=“”,b……)很好,谢谢!@Edgaras在正确的轨道上!很好,谢谢!@Edgaras在正确的轨道上!