проблемы с подключением к базе данных Visual FoxPro - PullRequest
1 голос
/ 29 октября 2010

Я собираю приложение, которое подключается к базе данных vfp. У меня все работает нормально, если я определяю строку подключения в файле app.config -

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

Я даже пытался извлечь имя поставщика непосредственно из строки подключения, которая работает успешно, но я получаю ту же ошибку. Кто-нибудь знает, почему он работает в одну сторону, а не в другую?

Спасибо

Ответы [ 2 ]

2 голосов
/ 29 октября 2010

Проблема здесь связана со строкой соединения, а не с именем провайдера.Так как в сообщении ProviderName произошла ошибка, я ошибочно предположил, что это была проблема, но в строке подключения отсутствовал фрагмент.

спасибо

0 голосов
/ 29 октября 2010

Один сайт, который может вам помочь в будущем - http://connectionstrings.com/

...