我正在尝试创建一个可以使用不同数据库连接的.Net核心控制台应用程序。目前,我正在编写应用程序以使用SQL,将来如果我想使用Oracle或任何其他连接,那么我应该能够轻松实现这一目标。因此,我为此使用依赖项注入。
我正在使用ServiceCollection探索以下选项
IConfiguration config = new ConfigurationBuilder()
.AddJsonFile("appsettings.json", true, true)
.Build();
var sqlconnectionstring = config.GetConnectionString("SQLConnectionString");
var serviceProvider = new ServiceCollection()
.AddLogging()
.AddSingleton<IChannel, Email>()
.AddTransient<IDBObjectManager>(s => new SQLDBObject(sqlconnectionstring))
这里的想法是,我创建了一个具有SQL相关功能的SQLDBObject类。将来,我将为其他一些数据库创建一个。
我在Entity Framework上看到了很多与此相关的文章,但目前我正在检查以使此功能与SQL连接类一起使用。
我不知道我在这里是否正确使用了DI。有人可以建议吗?