2017-07-12 2 views
0
のLinkedListの

にC#で私はjQueryを使って情報をコレットに成功AJAXを経由して分離コードするJSONに掲示していたから、私のHTMLコード内のチケットのコレクションを、持っています。ここでデシリアライズJSONタプル

は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); 
} 

私はエラーを取得します:

No parameterless constructor defined for type of 'System.Tuple`4[[System.Int32, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089],[System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089],[System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089],[System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]]'.

私はすでにdaを保存する作業方法を作成しているので、この構造を使いたいと思いますそれと一緒にDBに。これはウェブフォームで行われています。

編集:私は、.NETデシリアライザは、タプルの問題を持って覚えているからVS2012

答えて

0

を使用。

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

ありがとう:私はJSON.netが

https://www.nuget.org/packages/Newtonsoft.Json/

使い方あなたの問題を解決するべきだと思います。私はVS2012にいるので、パッケージをインストールできません。明らかに、NuGet 2.12+が必要です。これは利用できません。 –

+0

待って、私はそれをインストールする必要はありません、私は、コードを実行することができ判明します。問題は、変数 "result"には正しい項目数がありますが、int値はすべて0であり、文字列はすべてnullです。 –

関連する問題