我正在 Windows CE 5.0 下的 Compact Framework 3.5 中编写这段代码来处理两个不同的数据库:
using System.Data;
using System.Data.SqlClient;
using System.Data.SqlServerCe;
using System.Data.Common;
public myClass
{
private DbConnection dbCn;
private DbCommand dbCmd;
public void myClass(bool ce)
{
if (ce)
{
dbCn = new SqlCeConnection();
dbCmd = new SqlCeCommand();
}
else
{
dbCn = new SqlConnection(); // COMPILER ERROR Cannot implicitly convert type 'System.Data.SqlClient.SqlConnection' to 'System.Data.Common.DbConnection'
dbCmd = new SqlCommand();// COMPILER ERROR Cannot implicitly convert type 'System.Data.SqlClient.SqlCommand' to 'System.Data.Common.DbCommand'
}
}
为什么它不能将 SqlXX 转换为 DbXX ??? 来自 MSDN SqlXX 是 DbXX 的孩子!顺便说一句,SqlCeXX 没问题。我不能使用 cf 中缺少的 DbPoviderfactory。
谢谢