使用.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'}]"
我不希望双引号引起来,所以我认为实际属性不应该是字符串。是否有使用更好的数据类型或没有双引号的返回方法?
答案 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);
}
}
}