如何推迟对象反序列化,并将JSON作为单个大型字符串对象接收

时间:2014-06-11 15:53:13

标签: c# json

我有一个小但可能不那么简单的问题。

我正在研究一个Controller方法,该方法充当JSON请求的监听器,这些请求将从另一个系统进入我们的系统。具有讽刺意味的是,我将这些传入的请求解析为C#对象没有问题,这是我已经开始工作的了。但是,在这一点上,我正在寻找一种推迟解析对象的方法,并且只是将JSON作为单个大型字符串对象接收。我还没有找到解决方案。

这是我的“监听器”方法的一般格式:

public ActionResult Catch(string notification)
{
    ... do something with the notification string
}

我已经看到其他地方的解决方案向某个URL发送请求并获取一个JSON字符串的字符串响应,但这不是我在这里必须做的。对象是让这个方法坐在那里,等待任意数量的通知请求,快速将JSON作为字符串抓取,然后将其填入带有日期时间戳的数据库队列中。

稍后会将字符串实际解析为有效对象。

编辑:对不起,我没有说清楚:我目前没有成功收到字符串对象。此时,它始终为null,因为C#尝试解析它。

1 个答案:

答案 0 :(得分:3)

您可以自己阅读:

public ActionResult Catch()
{
    var reader = new StreamReader(Request.InputStream);
    var rawString = reader.ReadToEnd();

    //do something here.
}