使用类库或数据访问层的.Net 5+项目中连接字符串的现代位置



似乎许多存储连接字符串的.net教程都是非常简单的项目,不使用单独的数据访问层,或者相当陈旧。

将连接字符串存储在具有独立于主项目的用于数据访问的类库的c#项目(我使用的是web API(中的当前最佳实践是什么?连接字符串应该位于类库中的appsettings.json中,还是需要驻留在主项目中才能传递到数据访问库中?

谢谢!

如果库只用于与一个特定地址通信,并且它可能是稳定的,那么将其硬编码到库中是有意义的。

另一方面,如果库可以用于多个地址,那么最好从主项目中传入。

一种对两者都有效的方法是对默认地址进行硬编码,同时允许开发人员在使用库时覆盖它。一个非常简单的例子是:

class MyApiLibrary
{
MyApiLibrary(string address = "https://example.com/api/")
{
// Code
}
}