【发布时间】:2015-09-17 14:25:10
【问题描述】:
我正在尝试连接到我为使用 OLE DB 进行测试而下载的 Visual FoxPro 数据库,这是我的代码:
private void ReadMyData() {
String dbProvider = "Provider=.NET Framework Data Provider for OLE DB;";
String dbSource = "Data Source=VFPOLEDB.C:\\USERS\\X\\DESKTOP\\LOG;";
String connectionString = dbProvider + dbSource;
OleDbConnection FPDBConn = new OleDbConnection(connectionString);
OleDbCommand FPDBCmd;
string sql = null;
sql = "Select * from clogbook";
try {
FPDBConn.Open();
FPDBCmd = new OleDbCommand(sql, FPDBConn);
OleDbDataReader FPDBReader = FPDBCmd.ExecuteReader();
while (FPDBReader.Read()) {
Debug.Write(FPDBReader.GetInt32(0) + ", " + FPDBReader.GetString(1));
}
FPDBReader.Close();
FPDBCmd.Dispose();
FPDBConn.Close();
} catch (Exception ex)
{
Debug.Write("Can not open connection ! " + ex);
}
}
问题是我收到“System.InvalidOperationException:'用于 OLE DB 的 .NET Framework 数据提供程序'提供程序未在本地计算机上注册。”
我在谷歌上搜索它并遇到了这个 msdn page,它说异常“InvalidOperationException”的条件是“连接已打开”。在这种情况下,我认为不会发生这种情况。
我怎样才能让它工作?
PS:接受不同的建议来建立这种联系。
【问题讨论】:
-
尝试将 x86 指定为您的平台目标。
-
@我已经试过了,没用。
标签: c# .net visual-foxpro