Entity framework Dotnet核心-实体框架-在本文中,空的花括号意味着什么,以及';结果如何
我最近读了G Pelpman关于“实现每个租户的数据库策略”的帖子 它处理连接到多个数据库的问题,并使用租户创建连接字符串 我感到困惑的是,它允许注册以下服务Entity framework Dotnet核心-实体框架-在本文中,空的花括号意味着什么,以及';结果如何,entity-framework,.net-core,entity-framework-core,Entity Framework,.net Core,Entity Framework Core,我最近读了G Pelpman关于“实现每个租户的数据库策略”的帖子 它处理连接到多个数据库的问题,并使用租户创建连接字符串 我感到困惑的是,它允许注册以下服务 public void ConfigureServices(IServiceCollection services) { services.AddDbContext<MultitenantDbContext>(o => { }); services.AddMvc(); services.Add
public void ConfigureServices(IServiceCollection services)
{
services.AddDbContext<MultitenantDbContext>(o => { });
services.AddMvc();
services.AddTransient<ITenantProvider, DummyTenantProvider>();
}
public void配置服务(IServiceCollection服务)
{
AddDbContext(o=>{});
services.AddMvc();
services.AddTransient();
}
特别是,
services.AddDbContext<MultitenantDbContext>(o => { });
services.AddDbContext(o=>{});
使用(o=>{})的原因是什么代码>
它如何帮助连接到多个数据库?服务。AddDbContext接收一个操作(操作)作为参数。。。
在这种情况下,正如您在共享的帖子“每个租户实施数据库策略”中所说的那样,ConfigureServices()将不提供连接,因此将向服务传递一个空操作。AddDbContext()以完全填充选项操作参数。。。
将根据在DBContextOptions Builder上定义的租户进一步提供连接。\u租户它是一个空操作委托。如果在启动ieservices.AddDbContext()中不进行任何设置,则可以完全删除该操作委托代码>