2 回答
TA贡献1858条经验 获得超8个赞
您可以尝试Startup.cs像这样配置代理
public void ConfigureServices(IServiceCollection services)
{
#region Database configuration
// Database configuration
services.AddDbContext<DbContext>(options =>
options.UseLazyLoadingProxies()
.UseSqlServer(Configuration.GetConnectionString("MyConnectionString")));
#endregion Database configuration
}
顺便说一下,您已经可以将应用程序包更新为纯2.1.0(不是最终版或RC)。您的配置可能无法正常工作的原因之一是组件的版本不稳定。
注意:Microsoft.EntityFrameworkCore.Proxies.dll是从nuget上独立于EFCore安装的
TA贡献2011条经验 获得超2个赞
在 Asp.net Core 2.1 中使用代理配置延迟加载的步骤
安装 Microsoft.EntityFrameworkCore.Proxies 包
启用LazyLoadingProxies可以通过调用UseLazyLoadingProxies来启用它:
protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)
=> optionsBuilder
.UseLazyLoadingProxies()
.UseSqlServer(myConnectionString);
或使用AddDbContext时:
.AddDbContext<BloggingContext>(
b => b.UseLazyLoadingProxies()
.UseSqlServer(myConnectionString));
然后,EF Core将为可以被覆盖的任何导航属性启用延迟加载,也就是说,它必须是虚拟的。
- 2 回答
- 0 关注
- 107 浏览
添加回答
举报