小编Mit*_*esh的帖子

在 ASP.Net Core 应用程序中动态更改 SQL Server 连接字符串

我一开始打开一个数据库,然后需要根据用户选择两个值打开另一个数据库。数据库选择必须在运行时进行,并且每次都会改变。

尝试使用连接字符串类访问连接字符串,并尝试了其他选项,例如我不理解的单例。我在运行 SQL Server Express 的本地 Windows 10 系统上运行此程序。使用 Asp.Net Core 2.1 进行编码

> ASP.Net Core v2.1
Run Code Online (Sandbox Code Playgroud)

构建多租户、多年应用程序 每个客户每年都会有一个 SQL 数据库

我希望有一个具有以下结构的表

COMPANY_CODE VARCHAR(3),
COMPANY_YEAR INT,
COMPANY_DBNAME VARCHAR(5)
Run Code Online (Sandbox Code Playgroud)

样本数据

COMPANY_CODE: AAD
COMPANY_YEAR: 19
COMPANY_DB: AAD19

COMPANY_CODE: AAD
COMPANY_YEAR: 18
COMPANY_DB: AAD18

COMPANY_CODE: AAD
COMPANY_YEAR: 17
COMPANY_DB: AAD17
Run Code Online (Sandbox Code Playgroud)

因此,每家公司都会有多行 - 每个财政年度一行。

COMPANY_DB 列将存储要为该会话打开的数据库名称。

用户通过身份验证后,我想更改连接字符串以指向所选行的 COMPANY_DB 列中的数据库,然后让登录的用户执行事务。

我无法弄清楚如何更改startup.cs中嵌入的连接字符串。

任何有关如何实现这一目标的提示将不胜感激。

sql-server connection-string asp.net-core

3
推荐指数
1
解决办法
5368
查看次数