C# 如何在ASP.NET Web API控制器中动态设置默认连接字符串?

C# 如何在ASP.NET Web API控制器中动态设置默认连接字符串?,c#,asp.net,asp.net-web-api,C#,Asp.net,Asp.net Web Api,我设置了一个WebAPI服务,最初它只设置了一个连接字符串,所以默认使用这个连接从中检索数据 我现在在web.config中添加了第二个连接字符串,想知道用户如何在调用时传递要使用的连接名称,以便服务指向所选数据库。此时,它将只指向文件中的第一个连接字符串 我见过一些解决方案,其中使用configuration manager设置字符串变量并将其传递到数据访问层,但我所追求的是一种不必传递额外变量的方法,让API将所选连接字符串设置为默认值并使其自动指向该db,类似于只有一个连接字符串的情况。所

我设置了一个WebAPI服务,最初它只设置了一个连接字符串,所以默认使用这个连接从中检索数据

我现在在web.config中添加了第二个连接字符串,想知道用户如何在调用时传递要使用的连接名称,以便服务指向所选数据库。此时,它将只指向文件中的第一个连接字符串


我见过一些解决方案,其中使用configuration manager设置字符串变量并将其传递到数据访问层,但我所追求的是一种不必传递额外变量的方法,让API将所选连接字符串设置为默认值并使其自动指向该db,类似于只有一个连接字符串的情况。

所以用户应该在进行任何数据库查询之前选择一个连接?对吗?每个用户都可以选择不同的连接。。。同时?是的,这是正确的,它仅供内部使用,需要定期访问单个数据库,但需要半频繁访问其他数据库为什么不公开另一种方法,您可以控制该方法代码中使用的连接字符串DAL基本上是来自主本地应用程序的预先存在的代码,他们使用登录用户的sessionID自动设置SQL数据库的连接字符串。我不允许对预先存在的代码进行更改,因此我需要能够指向控制器内的其他数据库。新方法将在控制器上,因此不需要更改DAL。