如何为SQL Server和SQL Server Compact编写相同的ado.net代码?

时间:2012-04-12 14:43:13

标签: c# .net sql-server sql-server-ce

我正在开发一个应用程序。客户希望应用程序在两个数据库(SQL Server Compact Edition和SQL Server)上运行。

现在问题出在数据集中的Visual Studio中,您必须为不同的数据库编程两次。

这将使我的工作翻倍。有什么办法可以使用相同的数据集和数据表代码来与这两个对象进行交互吗?

1 个答案:

答案 0 :(得分:2)

通过使用DbProviderFactories(参见http://msdn.microsoft.com/en-us/library/wda6c36e.aspx),可以在连接字符串中指定provider,并编写与多个提供程序(不同数据库)一起使用的代码。

然后确保您的代码使用DbConnectionDbDataReader等基类,而不是SqlConnectionSqlDataReader等提供商特定的类。