为什么无法解析Json并显示原始结果?

时间:2019-07-04 00:38:17

标签: c# json entity-framework linq

我想以正确的格式而不是Raw结果返回结果的正文。

  public class tbl_Product
  {   
   public tbl_Product()
    {
        tbl_ProductPricing = new HashSet<tbl_ProductPricing>();
    }

    public Guid Id { get; set; }      
    public string ProductCode { get; set; }
    public string ProductName { get; set; }        

    [InverseProperty("Product")]
    public virtual ICollection<tbl_ProductPricing> tbl_ProductPricing { get; set; }
 }

下面是我在返回期间的WebAPI函数:

[HttpGet]
public async Task<ActionResult<ICollection<tbl_Product>>> GetProductList()
{
    return Ok(await _context.tbl_Product.Include(a => a.tbl_ProductPricing).ToListAsync());
}

但是,它会返回格式,如下所示:

https://i.stack.imgur.com/BkDPy.jpg


我期望的格式是:

[
  {
    "id": "dc9874d0-9808-11e9-990d-014e614ad9ed",
    "ProductName": "Orange",
    "ProductCode": "A001",
    "ProductPricing":
    [
     {"id":"980874d0-014e-11e9-ad9e-114e614ad9ed",
      "Price":"5"
     }
    ]
  },
  {
    "id": "90d874d0-9808-11e9-990d-014e614ad9ed",
    "ProductName": "Apple",
    "ProductCode": "A002",
    "ProductPricing":
    [
     {"id":"ed0874d0-014e-11e9-ad9e-114e614ad9ed",
      "Price":"10"
     }
    ]
  }
 ]

我可以知道代码的哪一部分不正确吗?

2 个答案:

答案 0 :(得分:1)

这对我有帮助,您可以在您的状态全局设置

recv()

答案 1 :(得分:-2)

您应该使用Newtonsoft.Json.JsonConvert.SerializeObject();手动设置返回字符串的格式。

然后格式可以预测

(另外:我建议您粘贴结果字符串,以便我们可以详细比较两者,而不仅仅是一张不能显示整个响应的图片;运行diff是我测试第一个动作是否是发生了一些奇怪的事情,但我无法在图片上做到这一点)