为什么在 asp.net mvc 中只对一个数据库使用多个连接字符串?

why use multiple connection strings in asp.net mvc for just one database?

我正在使用一个数据库,该数据库通过连接字符串连接到项目。 Asp.Net 模板还为我提供了一个用于用户和身份信息的连接字符串。所以我将 conn 字符串指向我需要使用的同一个数据库。因此,一个数据库将用于两个连接字符串,用户表将生成到我已有的数据库中。 在这种情况下使用 2 个不同的 conn 字符串是否是一种好方法,而这 2 个字符串指向同一个数据库?只制作 1 个连接字符串更好吗?还是我可以选择随心所欲?

这取决于连接字符串在语义上是否相同。他们是否使用相同的凭据或其他可能影响行为的标志?您可能需要细粒度地控制哪些用户可以访问哪些 table。

如果两个字符串在语义上是相同的,那么最好它们是相同的,这样只会创建一个连接池(假设两个字符串在同一个应用程序中使用)。

默认情况下,模板将创建一个 localDB,连接字符串就是为此目的。如果您已经启动了 SQL 服务器实例并且 运行 那么您可以提及并使用它。您不需要默认值。

顺便说一句,人们通常针对不同的环境使用多个连接字符串,例如 DEVTESTUAT 等,因为它们将 having/pointing 连接到不同的数据库。