Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/256.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# EF Core和Asp.Net Core中多租户的动态连接字符串_C#_Entity Framework_Asp.net Core_Entity Framework Core_Multi Tenant - Fatal编程技术网

C# EF Core和Asp.Net Core中多租户的动态连接字符串

C# EF Core和Asp.Net Core中多租户的动态连接字符串,c#,entity-framework,asp.net-core,entity-framework-core,multi-tenant,C#,Entity Framework,Asp.net Core,Entity Framework Core,Multi Tenant,我的问题很直截了当,有些东西已经过时了,或者没有回答我的问题 现在,我的连接字符串位于appsettings.json中,并按如下方式设置数据库连接: Startup.cs services.AddDbContext<MyDbContext>( options => options .UseSqlServer(_configuration.GetConnectionString("ConnectionString"))); publ

我的问题很直截了当,有些东西已经过时了,或者没有回答我的问题

现在,我的连接字符串位于appsettings.json中,并按如下方式设置数据库连接:

Startup.cs

services.AddDbContext<MyDbContext>(
    options => options
        .UseSqlServer(_configuration.GetConnectionString("ConnectionString")));
public class MyDbContext : DbContext
{
    public MyDbContext(DbContextOptions< MyDbContext > options) : base(options) { }
    ...
}
services.AddDbContext(
选项=>选项
.UseSqlServer(_configuration.GetConnectionString(“ConnectionString”));
MyDbContext.cs

services.AddDbContext<MyDbContext>(
    options => options
        .UseSqlServer(_configuration.GetConnectionString("ConnectionString")));
public class MyDbContext : DbContext
{
    public MyDbContext(DbContextOptions< MyDbContext > options) : base(options) { }
    ...
}
公共类MyDbContext:DbContext
{
公共MyDbContext(DbContextOptionsoptions):基本(选项){}
...
}
但是,我想让我的用户可以通过在登录时提供连接字符串来动态选择数据库。因此,用户在登录应用程序时提供用户名、密码和连接字符串


这样可能吗?如果是,请告诉我如何做。我想不出来。

行,谢谢@JohnI没有答案,但您可能需要查找实体框架的多租户配置。可能是什么。您询问的是多租户,而不是动态连接字符串。这不是通过使用不同的连接字符串可以解决的问题。这解释了各种选项(表、模式、数据库或服务器多租户)以及如何使用dbcommandinterceptorhanks实现这篇伟大的文章中的每一个选项!我会调查的。会的,谢谢@JohnI没有答案,但您可能需要查找实体框架的多租户配置。可能是什么。您询问的是多租户,而不是动态连接字符串。这不是通过使用不同的连接字符串可以解决的问题。这解释了各种选项(表、模式、数据库或服务器多租户)以及如何使用dbcommandinterceptorhanks实现这篇伟大的文章中的每一个选项!我会调查的。