我在Startup.cs
中创建了一个ASP.NET Core 2.2应用程序:
services.AddEntityFrameworkSqlServer();
services.AddScoped<ILazyLoader, MyLazyLoader>();
services.AddDbContext<ModelContext>(builder =>
{
builder.UseLazyLoadingProxies();
builder.UseSqlServer(Configuration.GetConnectionString("DefaultConnection"));
var options = builder.Options;
services.AddSingleton(options);
});
但是lazyloader并没有更改,我需要更改以进行更改吗?
答案 0 :(得分:4)
删除前两行
services.AddEntityFrameworkSqlServer();
services.AddScoped<ILazyLoader, MyLazyLoader>();
并在AddDbContext
构建器操作中设置与EFC相关的内容。
builder.UseSqlServer
将在内部进行AddEntityFrameworkSqlServer()
,并且要替换 ILazyLoader
服务,请使用-{{1} }方法:
ReplaceService