Поддержка Entity Model Firebird

Я скачал Firebird 2.5 и где-то читал, что он поддерживает Entity Framework. Когда я добавляю модель данных объекта ADO.NET в свой проект и пытаюсь обновить базу данных с помощью модели, Visual Studio 2010 отображает в списке только источники данных SQL Server. В списке нет провайдера ODBC или Firebird.NET.

В таком случае, как заставить Firebird выступать в качестве источника данных для Entity Model в моем проекте?


person RKh    schedule 03.10.2011    source источник


Ответы (3)


Установите Firebird-2.5.0.26074

cd "C:\Program Files\FirebirdDDEXProvider-2.0.5"
"C:\Program Files\Microsoft SDKs\Windows\v7.0A\bin\NETFX 4.0 Tools\gacutil.exe" /i FirebirdSql.VisualStudio.DataTools.dll

cd "C:\Program Files\FirebirdClient"
"C:\Program Files\Microsoft SDKs\Windows\v7.0A\bin\NETFX 4.0 Tools\gacutil.exe" /i FirebirdSql.Data.FirebirdClient.dll
Win32.

Установите NETProvider-2.6.0.

И чтобы интегрировать его в VS2010:

Распакуйте FirebirdDDEXProvider-2.0.5.zip и следуйте инструкциям в ReadMe.txt внутри.

(комбинация этих версий работает - более новые версии не пробовал)

Обновление: немного больше подробностей о том, как я выполнял некоторые шаги в файле ReadMe.txt.

На шаге 1: зарегистрируйте эти 2 файла в GAC.

cd "C:\Program Files\FirebirdDDEXProvider-2.0.5"
"C:\Program Files\Microsoft SDKs\Windows\v7.0A\bin\NETFX 4.0 Tools\gacutil.exe" /i FirebirdSql.VisualStudio.DataTools.dll

cd "C:\Program Files\FirebirdClient"
"C:\Program Files\Microsoft SDKs\Windows\v7.0A\bin\NETFX 4.0 Tools\gacutil.exe" /i FirebirdSql.Data.FirebirdClient.dll

На шаге 2: вот часть, которую я добавил в machine.config.

<configuration>
  <configSections>
    ...
    <section name="firebirdsql.data.firebirdclient"
         type="System.Data.Common.DbProviderConfigurationHandler, System.Data, 
         Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />

и

<system.data>
  <DbProviderFactories>  
    <add name="FirebirdClient Data Provider" invariant="FirebirdSql.Data.FirebirdClient" 
    description=".Net Framework Data Provider for Firebird" 
    type="FirebirdSql.Data.FirebirdClient.FirebirdClientFactory, 
    FirebirdSql.Data.FirebirdClient, Version=2.6.0.0, Culture=neutral, 
    PublicKeyToken=3750abcc3150b00c" />

Замените «3750abcc3150b00c» в приведенном выше ключе из этого:

"C:\Program Files\Microsoft SDKs\Windows\v7.0A\bin\NETFX 4.0 Tools\gacutil.exe" /l Firebirdsql.data.firebirdclient
person Michael Olesen    schedule 03.10.2011
comment
Я попытался, как вы предложили, но Entity Model не распознает поставщика Firebird. Его до сих пор нет в списке. - person RKh; 04.10.2011
comment
У меня тоже не получилось с первого раза. Вы должны внимательно следовать readme WERY. (заставляет меня задуматься, сделал ли кто-нибудь скрипт для автоматизации этой процедуры) - person Michael Olesen; 07.10.2011

я сделал то же самое, в проводнике сервера провайдер Firebird распознается, но я не могу создать модель данных объекта, потому что в списке провайдеров нет провайдера Firebird.

person Tatiana    schedule 20.10.2011

Лучше использовать пакеты MSI, которые сейчас доступны. Как для провайдера, так и для DDEX. Он позаботится о регистрации DDEX и т. д. для вас. Не забудьте нажать кнопку «Дополнительно», чтобы выбрать нужные версии.

person cincura.net    schedule 17.04.2013