0

我在返回 Json 对象时遇到问题。这是代码。

 public JsonResult getDictionary(List<Int32> input)
 {
    Dictionary<Int32, Int32> dict = new Dictionary<Int32, Int32>();
    ...fill dict
    return Json(dict);
 }

这是javascript代码

 var dict = new Object();
 ...
 $("#Button").click(function ()
 {
 var postData = { input: inputArray };

     $.ajax({
         type: "POST",
         url: "/Auction/getDictionary",
         data: postData,
         success: function(data){
             for(var i in data){
                 dict[i.Key] = i.Value;
             }
             //dict = data;
         },
         dataType: "json",
         traditional: true
     });
});

我的问题是“dict”没有被“data”填充,我无法检查“data”中是否有任何值,因为我无法在那里设置断点。

我已经在这里找到了一个类似的问题,但我不明白他在做什么。

编辑:我收到此错误(我尝试将其翻译成英文):[ArgumentException]:类型“System.Collections.Generic.Dictionary`2[[System.Int32, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089],[System.Int32, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]]" 将不支持字典的序列化/反序列化。键必须是字符串或对象。

我将尝试在一个对象中使用一个包含两个整数的列表。

4

1 回答 1

0

使用 List< List< Int32>> 给我以下结果: [[82,193],[136,142], ... ] 不如字典,但它有效。

于 2014-01-29T07:33:35.800 回答