无法禁用延迟加载[重复]

问题描述 投票:-1回答:1

我尝试禁用延迟加载但它不起作用。有些男生知道我做错了吗?我还将“虚拟”属性定义为非虚拟属性。我在这里遵循了这个教程:qazxsw poi

http://www.entityframeworktutorial.net/lazyloading-in-entity-framework.aspx

无论是否有“virtual”关键字,我都会得到相同的错误(“Category”每次都为NULL):

public partial class DataContext : DbContext { public DataContext() : base("name=DataContext1") { this.Configuration.LazyLoadingEnabled = false; } public virtual DbSet<Category> Categories { get; set; } public virtual DbSet<Payment> Payments { get; set; } protected override void OnModelCreating(DbModelBuilder modelBuilder) { modelBuilder.Entity<Category>() .HasMany(e => e.Payments) .WithRequired(e => e.Category) .WillCascadeOnDelete(false); } }

c# entity-framework lazy-loading
1个回答
0
投票

要关闭特定属性的延迟加载,请不要将其设置为虚拟并关闭上下文中所有实体的延迟加载,只需将其配置属性设置为false即可。

考虑到这一点,似乎您的代码已经关闭了上下文的所有实体的延迟加载。

© www.soinside.com 2019 - 2024. All rights reserved.