繁体   English   中英

如何忽略ASP.NET MVC Web API中的导航属性

[英]How to ignore navigation properties in asp.net mvc web api

我将ASP.NET Web API与Entity Framework结合使用,但是在为导航属性生成JSON时遇到问题:

我有两个桌子。 产品和类别。

    public class Product
        {
            public int ProductID { get; set; }
            public string ProductName { get; set; }

            public virtual Category Category { get; set; }
        }

public class Category
    {    
        public int CategoryID { get; set; }
        public string CategoryName { get; set; }

        public virtual ICollection<Product> Products { get; set; }
    }

当我生成产品的JSON时,它会生成很好的JSON类别,但是在类别JSON内有另一个指向JSON产品的JSON,因此创建了一个巨大的JSON文件,我尝试通过删除虚拟的来解决此问题,但是每次更新模型我面临同样的问题。 有什么办法解决吗?

如果使用的是Newtonsoft.Json,则只需将属性[JsonIgnore]应用于要忽略的属性。

public class Category
{    
    public int CategoryID { get; set; }
    public string CategoryName { get; set; }

    [JsonIgnore]
    public virtual ICollection<Product> Products { get; set; }
}

使用此设置,每当将类别序列化为Json时,它将忽略Products集合

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM