2010-10-29 53 views
0

Je suis en train de mettre en place une application qui se connecte à une base de données vfp. Je l'ai fonctionne bien si je définis ma chaîne de connexion dans le fichier app.config -Problèmes de connexion à la base de données Visual FoxxPro

<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" /> 

En fin de compte, le chemin vers la source sera dynamique, donc je suis en train de définir la chaîne de connexion à l'aide ConnectionStringSettings. J'ai le code suivant -

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..."; 

Quand je lance ce code, je reçois l'erreur suivante -

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

J'ai même essayé tirer le nom du fournisseur directement à partir de la chaîne de connexion qui fonctionne avec succès , mais j'ai la même erreur. Est-ce que quelqu'un a une idée de pourquoi ça marche d'une façon, mais pas de l'autre?

Merci

Répondre

1

La question ici tourné être un problème avec la chaîne de connexion, pas le ProviderName. Comme il s'agissait d'une erreur sur ProviderName, j'ai supposé à tort qu'il s'agissait d'un problème, mais il manquait un élément dans la chaîne de connexion.

grâce