如何通过Asp.Net核心中间件的JsonResult进行响应?

我想通过一个Asp.Net核心中间件的JsonResult进行响应,但不清楚如何实现这一点。我在谷歌上搜索了很多次,但几乎没有成功。我可以通过将ActionExecutedContext.Result设置为JsonResult来从全局IActionFilter通过JsonResult进行响应,这很酷。但在本例中,我希望从中间件有效地返回JsonResult。如何才能做到这一点

我提出了关于JsonResultIActionResult的问题,但理想的解决方案是使用任何IActionResult来编写中间件的响应

中间件是ASP.NET核心的底层组件。在MVC存储库中实现了JSON(高效)的写出。具体来说,在JSON格式化程序组件中

它基本上归结为在响应流上编写JSON。以最简单的形式,它可以在如下中间件中实现:

使用Microsoft.AspNetCore.Http;
使用Newtonsoft.Json;
// ...
公共异步任务调用(HttpContext上下文)
{
var result=新的SomeResultObject();
var json=JsonConvert.SerializeObject(结果);
wait context.Response.WriteAsync(json);
}

发表评论