JSON字符串转换为实际JSON

时间:2019-04-29 15:51:23

标签: json .net-core

使用.Net core 2.2,我正在构建一个API,该API从存储过程中返回JSON数据(使用FOR JSON PATH),并且返回的值类似于:

[{"ID":213,"SizeCode":"Small"},{"ID":257,"SizeCode":"S/M"},{"ID":214,"SizeCode":"Medium",},{"ID":215,"SizeCode":"Large"}]

因此,当我将其映射到对象以从API返回时

public class Details
{
    public string SizeChart { get; set; }
}

,它返回以下内容:

"[{'ID':213,'SizeCode':'Small'},{'ID':257,'SizeCode':'S/M'},{'ID':214,'SizeCode':'Medium',},{'ID':215,'SizeCode':'Large'}]"

我不希望双引号引起来,所以我认为实际属性不应该是字符串。是否有使用更好的数据类型或没有双引号的返回方法?

1 个答案:

答案 0 :(得分:0)

您需要将string解析为JSON对象(实际上是您的情况-JArray,因为它是一个数组),然后从您的API返回它:

JArray a = JArray.Parse(jsonString);

所以看起来可能是

public class Details
{
    public string SizeChart { get; set; }

    public JArray SizeChartJArray { 
        get { 
            return JObject.Parse(SizeChart);
        }
    }
}