ASP.Net Core中的JSON序列化/反序列化

既然没有JavaScriptSerializer,可以使用什么本机实现来处理呢?

我注意到了,JsonResult并且可以使用此格式将数据格式化为JSON,但是如何反序列化

或者,也许我缺少某些依赖项project.json

回答:

您可以使用Newtonsoft.Json,它的依赖项Microsoft.AspNet.Mvc.ModelBinding是的依赖项Microsoft.AspNet.Mvc。因此,您无需在project.json中添加依赖项。

#using Newtonsoft.Json

....

JsonConvert.DeserializeObject(json);

请注意,使用WebAPI控制器,您无需处理JSON。

更新ASP.Net Core 3.0

Json.NET已从ASP.NET

Core 3.0共享框架中删除。

您可以在高性能Utf8JsonReader和之上使用新的JSON序列化器层Utf8JsonWriter。它从JSON反序列化对象并将对象序列化为JSON。内存分配保持最少,并包括支持使用Stream异步读取和写入JSON。

首先,请使用名称空间中的JsonSerializerSystem.Text.Json.Serialization。请参阅文档以获取信息和示例。

要在ASP.NET Core 3.0项目中使用Json.NET:

  • 添加对Microsoft.AspNetCore.Mvc.NewtonsoftJson的程序包引用
  • 更新ConfigureServices以调用AddNewtonsoftJson()。
    services.AddMvc()

    .AddNewtonsoftJson();

阅读Json.NET支持的迁移从ASP.NET核心2.2至3.0的第二个预览版的详细信息。

以上是 ASP.Net Core中的JSON序列化/反序列化 的全部内容, 来源链接: utcz.com/qa/433313.html

回到顶部