首页 > 解决方案 > JSON 作为 ASP.Net Core 3.1 控制器中的数据类型

问题描述

我正在使用 .Net Core 3.1 创建一个 Api,其中我需要一个属性输入作为控制器中的 JSON,例如:

{
    "name": "test",
    "JSONData": { "roles": ["data1", "data2"] }
}

这样我就可以定义请求,例如:

public class MyRequest
{
    public string Name { get; set;}
    public JSON JSONData { get; set; }
}

如果我们不能将它作为“JSON”数据类型,我正在考虑将它作为一个字符串并使用序列化/反序列化它。有没有办法从请求和响应中获得一个 JSON 类型的属性?

标签: json.net-core-3.1

解决方案


我刚刚尝试过 JsonElement 并且可以看到它有效;只有一个问题是该属性没有从招摇的 UI 中显示出来。所以请求是这样的:

public class MyRequest
{
    public string Name { get; set;}
    public JsonElement JSONData { get; set; }
}

推荐阅读