javascript - 在 Web Api Controller 中将 JSON 反序列化为字典

标签 javascript c# jquery json asp.net-web-api

我有这样的 JSON 字符串: '{"1":[1,3,5],"2":[2,5,6],"3":[5,6,8]}'

我想使用 ajax 请求将它发送到 Web Api Controller 而不更改:

   $.ajax({
        type: "POST",
        url: "Api/Serialize/Dict",
        data: JSON.stringify(sendedData),
        dataType: "json"
    });

在Web Api中我有这样的方法:

    [HttpPost]
    public object Dict(Dictionary<int, List<int>> sendedData)
    {
        //code goes here
        return null;
    }

总是sendedData == null.换句话说:我不知道如何将 JSON 反序列化为 (Dictionary<int, List<int>> .

谢谢你的回答。

最佳答案

试试这个

 [HttpPost]
    public object Dict(Dictionary<int, List<int>> sendedData)
    {
       var d1 = Request.Content.ReadAsStreamAsync().Result;
       var rawJson = new StreamReader(d1).ReadToEnd();
       sendedData=Newtonsoft.Json.JsonConvert.DeserializeObject<Dictionary<int, List<string>>>(rawJson);

    }

关于javascript - 在 Web Api Controller 中将 JSON 反序列化为字典,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22988273/

相关文章:

c# - Doxygen 只包含接口(interface)

c# - 将 linq 模型转换为通用列表

asp.net - 如何使用 jQuery 从 ASP.NET 服务器控件传递值?

javascript - 为什么 $ ('html' ).animate() 只适用于 IE 而 $ ('body' ).animate() 是 Chrome/Safari 所需要的?

php - Magento 客户网格 - 掩码电子邮件地址

javascript - 数据过滤 Javascript(嵌套字典和数组)

javascript - 如何从 AngularJs Controller 中的 ION-Range-Slider 获取 "from"和 "to"值

javascript - 如何从渲染器进程调用 Electron API 方法?

c# - 在 LINQ 查询的选择部分调用方法

javascript - jQuery 在 SPAN 或 P 标签中打印变量