C#MVC如何将自定义有效负载作为动态对象接收

时间:2017-01-23 03:07:48

标签: c# json asp.net-mvc asp.net-mvc-4

我有一个处理推送通知的控制器。除了必要的细节,如设备令牌,消息和标题,客户端希望通过我的控制器作为代理将其自定义有效负载发送到目的地。

JSON

...
...
data:{
    type:"asdasd",
    postId:123
}

类绑定器

Class{
    ...
    ...
    public dynamic data { get; set; }
}

但是,我注意到当我尝试将数据视为字符串时,它返回了我:"{}"

我处理自定义有效负载的方式是错误的吗?请指教。

编辑:我如何收到json:

[HttpPost]
public void doThis(Class class)

1 个答案:

答案 0 :(得分:0)

我找到了解决问题的方法。从流请求中读取有助于检索动态数据。

    Stream req = Request.InputStream;
    req.Seek(0, System.IO.SeekOrigin.Begin);
    string json = new StreamReader(req).ReadToEnd();

我认为问题在于模型绑定。我认为它只接受数据和类类型。