你好關係的不需要的加載,在EF核心
我有問題,EF核心的功能 - 它可以自動綁定相關實體一起當實體某處獨立地連接到當前dbCotnext。
假設以下兩個實體:
public class Seller {
public Guid Id {get;set;}
public List<Product> Products {get;set;}
}
public class Product {
public Guid Id {get;set;}
public Guid SellerId {get;set;}
public Seller Seller {get;set;}
}
和Controller(只是想象)一些代碼:
var seller = DbContext.Sellers.FirstOrDefault(e => e.Id == someId);
var products = DbContext.Products.All(t => t.SellerId == someId);
return StatusCode(200, products);
返回的JSON會像
[
{
"id": "1234",
"sellerId": "5678",
"seller": {
"id" : "5678",
"products": ["(muted reference loop exception from json converter here.)"]
}
}
]
但我不希望賣家被包含在每個產品中。如果我這樣做,我會打電話Products.Include(...)爲那個或別的東西。 我不想通過實體進行爬網並且無法導航屬性。 我不想用[JsonIgnore]將其隱藏,因爲有時必須包含關係。 當發生這種情況時,我也不想手動分離每個實體。
問題是,有沒有什麼辦法可以禁用或解決此問題?
感謝
嘗試'公開名單產品{獲得;設置;}'變化可空 –