[英]How do I stop Entity Framework from loading nested objects
我試圖弄清楚如何告訴Entity Framework如何為一對多關系渴望負載。 這是我面臨的一個示例情況。 我有兩個實體:
public class A
{
public Guid ID { get; set; }
public B B { get; set; }
}
public class B
{
public Guid ID { get; set; }
public ICollection<A> As { get; set; }
public ICollection<C> Cs { get; set; }
}
public class C
{
public Guid ID { get; set; }
}
如果我這樣做,我期望Context.B
屬性As和Cs為null。 如果我做Context.A.Include('B')
屬性B填充,並且Cs為null,這是我期望的,以及我想要的屬性As,但也填充了我不需要的屬性。 我想停止實體框架加載屬性為。 就像Entity Framework在說:“好吧,您想要實體A和B,哦,看起來B在其中包含As,所以我們也應該填充它。” 我不要
您需要在上下文級別啟用延遲加載,並將屬性標記為vritual
public class A
{
public Guid ID { get; set; }
public B B { get; set; }
}
public class B
{
public Guid ID { get; set; }
public virtual ICollection<A> As { get; set; }
public virtual ICollection<C> Cs { get; set; }
}
public class C
{
public Guid ID { get; set; }
}
public partial class MyDbContext : DbContext
{
public MyDbContext(): base("name=MyConnection")
{
this.Configuration.LazyLoadingEnabled = true;
}
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.