问题描述
去年,微软推出了新的 Microsoft.Data.SqlClient。
现在,如果我想编写以 sqlConnection
为例的库代码,我该如何处理才能使其同时适用于 Microsoft.Data.sqlClient.sqlConnection
和旧的 System.Data.sqlClient.sqlConnection
?是否有内置方式或第三方包可以弥合两个 sqlClient 包之间的差距?或者我是否必须将我的库代码加倍才能支持这两个包?
解决方法
我不明白您为什么需要复制任何代码。查询保持不变,只是提供了一些附加功能,例如 Azure Active Directory 集成。
使用 DbConnection
、DbCommand
等作为基类,并可能使用依赖注入或类似技术来决定使用哪种类型。