Dependency injection 连接应该传递什么?
我正在开发一个.NET核心库,它将与数据源接口。似乎最好使用设置库,但我不确定应该使用哪种类型:Dependency injection 连接应该传递什么?,dependency-injection,.net-core,Dependency Injection,.net Core,我正在开发一个.NET核心库,它将与数据源接口。似乎最好使用设置库,但我不确定应该使用哪种类型: (连接)字符串-然后我需要弄清楚我连接的是什么 DbContext-似乎特定于实体框架 DbConnection-如果它在其他地方共享,我不能随意打开和关闭 ??-这是最好的选择 最好的选择是什么?我正在使用内置DI。首先,有一点: 配置API提供了一种基于可在运行时从多个源读取的名称-值对列表配置应用程序的方法 每个配置值映射到一个字符串键 内置绑定支持将设置反序列化为自定义POCO对象(一个
- (连接)字符串-然后我需要弄清楚我连接的是什么
- DbContext-似乎特定于实体框架
- DbConnection-如果它在其他地方共享,我不能随意打开和关闭
- ??-这是最好的选择
- 不管您使用什么类来存储设置,它都是一个包装器,围绕着从一个设置源检索的名值对列表。此外,可以通过按键从设置存储器中简单地读取特定值
- 选项类是一个容器,用于对相关设置进行分组,其中类属性按名称与键相关。这个类必须是POCO=>具有公共属性、公共无参数构造函数等。像
、DbContext
这样的类不是类DbConnection
- 任何连接字符串(CS)都可以存储为字符串。您可以使用以下选项检查此项。因此,CS可以表示为设置源中的一个键值对。另一方面,CS也是一组键值对(参数名称=值),可以拆分为单独的部分。例如,simple CS to SQL Server具有下一个模板:
可以在类中表示/存储,如下所示:Server=myServerAddress;Database=myDataBase;User Id=myUsername; Password=myPassword;
public class ConnectionString { public string Server {get;set;} public string Database {get;set;} ... }