Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/json/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
将C#中的JSON反序列化为元组的LinkedList_C#_Json_Deserialization_Json Deserialization - Fatal编程技术网

将C#中的JSON反序列化为元组的LinkedList

将C#中的JSON反序列化为元组的LinkedList,c#,json,deserialization,json-deserialization,C#,Json,Deserialization,Json Deserialization,我的HTML代码中有一个票证集合,我使用JQuery从中收集信息,并通过AJAX成功地将JSON发布到codebehind 以下是JSON文件: {                 'arrayTickets':                                [                                                {"num":1,"rec":"SWAFAD","temp":"0","id":"f39443aa-1ae1-4d18-82b

我的HTML代码中有一个票证集合,我使用JQuery从中收集信息,并通过AJAX成功地将JSON发布到codebehind

以下是JSON文件:

{
                'arrayTickets':
                               [
                                               {"num":1,"rec":"SWAFAD","temp":"0","id":"f39443aa-1ae1-4d18-82b8-468f14dac507"},

                                              {"num":1,"rec":"admin","temp":"0","id":"20bf1fea-b03e-4a28-922a-9618c8c8a73f"}                                           ] 
}
问题是我似乎无法将其反序列化为我想要的结构类型:

[WebMethod]
public static void cmd_gravar_Click(string arrayTickets)
{
    JavaScriptSerializer json = new JavaScriptSerializer();

    LinkedList<Tuple<int, string, string, string>> tickets = json.Deserialize<LinkedList<Tuple<int, string, string, string>>>(arrayTickets);
}
[WebMethod]
public static void cmd_gravar_Click(字符串arrayTickets)
{
JavaScriptSerializer json=新的JavaScriptSerializer();
LinkedList tickets=json.Deserialize(arrayTickets);
}
我得到一个错误:

没有为类型的定义无参数构造函数 'System.Tuple`4[[System.Int32,mscorlib,Version=4.0.0.0, 区域性=中性,PublicKeyToken=b77a5c561934e089],[System.String, mscorlib,版本=4.0.0.0,区域性=中性, PublicKeyToken=b77a5c561934e089],[System.String,mscorlib, 版本=4.0.0.0,区域性=中性, PublicKeyToken=b77a5c561934e089],[System.String,mscorlib, Version=4.0.0.0,Culture=neutral,PublicKeyToken=b77a5c561934e089]'

我想继续使用这个结构,因为我已经创建了一个工作方法,用它将数据保存到数据库中。这是在webforms中完成的


编辑:我记得使用VS2012时,.net反序列化程序存在元组问题。我认为JSON.net应该解决您的问题

用法:

 var result = JsonConvert.DeserializeObject<LinkedList<Tuple<int, string, string, string>>>(arrayTickets); 
var result=JsonConvert.DeserializeObject(arrayTickets);

谢谢。无法安装该软件包,因为我在VS2012中,显然我需要NuGet 2.12+,但它不可用。等等,我不需要安装它,我可以运行代码。问题是变量“result”的项数正确,但int值都是0,字符串都是null。