如何延迟对象反序列化,只接收JSON作为单个大字符串对象

本文关键字:对象 JSON 字符串 单个大 何延迟 延迟 反序列化 | 更新日期: 2023-09-27 18:08:05

我有一个小问题,但可能不太简单。

我正在研究一个控制器方法,它作为JSON请求的监听器,将从另一个系统进入我们的系统。具有讽刺意味的是,将这些传入请求解析为c#对象没有任何问题,而且这是我已经开始工作的事情。但是,在这一点上,我正在寻找一种延迟解析对象的方法,并且只接收作为单个大字符串对象的JSON。我还没找到解决办法。

这是我的"listener"方法的一般格式:

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

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

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

编辑:我很抱歉我没有让这个更清楚:我目前没有成功地接收字符串对象。此时,它总是空的,因为c#试图解析它。

如何延迟对象反序列化,只接收JSON作为单个大字符串对象

你可以自己阅读:

public ActionResult Catch()
{
    var reader = new StreamReader(Request.InputStream);
    var rawString = reader.ReadToEnd();
    //do something here.
}