2010-10-29 91 views
0

我在一起连接到一个vfp数据库的应用程序。我有它工作正常,如果我在app.config文件中定义我的连接字符串 -visual foxpro数据库连接问题

<add name="vFoxProSource" connectionString="Provider=vfpoledb;Data Source=C:\directory\database.dbc;Collating Sequence=machine;" providerName="System.Data.OleDb.OleDbConnection, System.Data, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" /> 

最终,路径来源将是动态的,所以我想利用定义的ConnectionStringSettings连接字符串。我有以下的代码 -

ConnectionStringSettings vfpConnectionStringSettings = new ConnectionStringSettings(); 
vfpConnectionStringSettings.ProviderName = "System.Data.OleDb.OleDbConnection, System.Data, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"; 
vfpConnectionStringSettings.ConnectionString = ".. my connection string..."; 

当我运行这段代码,我收到以下错误 -

The 'System.Data.OleDb.OleDbConnection, System.Data, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089' provider is not registered on the local machine. 

我甚至试图直接从成功的工作连接字符串拉动提供商名称,但我得到同样的错误。有谁知道为什么它以单向方式工作,而不是其他方式?

感谢

回答

1

这里竟然是与连接字符串,而不是一个的ProviderName问题的问题。由于它在ProviderName上出错,我错误地认为这是一个问题,但连接字符串中缺少一段。

感谢