Pergunta

Description: After installing Firebird Client and DDEX for Visual Studio 2010 (.NET 4.0) I am unable to add new connection to firebird from Visual Sutio 2010 (Professional)->Server Explorer->Data Connections->Add Connection.

performed steps: - installed firebirdclient (NETProvider-2.6.0.msi -> C:\Program Files\FirebirdClient) - added assembly (FirebirdSql.Data.FirebirdClient.dll) to gac proof:

C:\Program Files\FirebirdClient>gacutil /i

firebirdsql.data.firebirdclient.dll Microsoft (R) .NET Global Assembly Cache Utility. Version 4.0.30319.1 Copyright (c) Microsoft Corporation. All rights reserved.

Assembly successfully added to the cache
  • got DDEX 2.0.5, -> C:\Program Files\FirebirdClient\DDEX205
  • added FirebirdSql.VisualStudio.DataTools.dll to gac (somebody wrote it might help)
C:\Program Files\FirebirdClient\DDEX205>gacutil

/i FirebirdSql.VisualStudio.Data Tools.dll Microsoft (R) .NET Global Assembly Cache Utility. Version 4.0.30319.1 Copyright (c) Microsoft Corporation. All rights reserved.

Assembly successfully added to the cache
  • edited VS2010 version of FirebirdDDEXProvider32

@=".NET Framework Data Provider for Firebird" "DisplayName"="Provider_DisplayName, FirebirdSql.VisualStudio.DataTools.Properties.Resources" "ShortDisplayName"="Provider_ShortDisplayName,FirebirdSql.VisualStudio.DataTools.Properties.Resources" "Description"="Provider_Description, FirebirdSql.VisualStudio.DataTools.Properties.Resources" "CodeBase"="C:\Program Files\FirebirdClient\DDEX205\FirebirdSql.VisualStudio.DataTools.dll" "InvariantName"="FirebirdSql.Data.FirebirdClient" "Technology"="{77AB9A9D-78B9-4ba7-91AC-873F5338F1D2}"

installed that (the whole file) as well - in C:\Windows\Microsoft.NET\Framework\v4.0.30319\Config in I added

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

in I added

  <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=4.0.0.0, Culture=neutral, PublicKeyToken=3750abcc3150b00c" />

I can connect via FbConnection to a firebird db

in Visual Studio 2010 IDE I can server explorer -> Data Connections -> Add Connection and choose Firebird Data Source but I never get any further! As soon as I press a key in any field the windows disapears (or if I choose a language, dialect whatever, windows disapears...).

can anybody help me?

Foi útil?

Solução

OMG

C:\Program Files\FirebirdClient>gacutil /l Firebirdsql.data.firebirdclient Microsoft (R) .NET Global Assembly Cache Utility. Version 4.0.30319.1 Copyright (c) Microsoft Corporation. All rights reserved.

The Global Assembly Cache contains the following assemblies:
Firebirdsql.data.firebirdclient, Version=2.6.0.0, Culture=neutral, PublicKeyTo ken=3750abcc3150b00c, processorArchitecture=MSIL

Number of items = 1

  • Version is 2.6.0.0 not 4.0.0.0 =>

it runs on .NET 4.0 but the assembly version IS 2.6.0.0

After this restart visual studio and it WORKS!

Outras dicas

in Visual Studio 2010 IDE I can server explorer -> Data Connections -> Add Connection and choose Firebird Data Source but I never get any further! As soon as I press a key in any field the windows disapears (or if I choose a language, dialect whatever, windows disapears...).

make sure edit the .NET framework file called Machine.config at C:\Windows\Microsoft.NET\Framework\v4.0.30319\Config for windows 7 64 bit also edit C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Config

First you must obtain accurate values to be placed in the Machine.config file, via gacutil:

c:\>gacutil -l FirebirdSQL.Data.FirebirdClient
Microsoft (R) .NET Global Assembly Cache Utility.  Version 4.0.30319.1
Copyright (c) Microsoft Corporation.  All rights reserved.

The Global Assembly Cache contains the following assemblies:
  FirebirdSQL.Data.FirebirdClient, Version=2.6.0.0, Culture=neutral, PublicKeyTo
ken=3750abcc3150b00c, processorArchitecture=MSIL

sample of adding the provider:

<DbProviderFactories>
  <add name="Microsoft SQL Server Compact Data Provider" invariant="System.Data.SqlServerCe.3.5" description=".NET Framework Data Provider for Microsoft SQL Server Compact" type="System.Data.SqlServerCe.SqlCeProviderFactory, System.Data.SqlServerCe, Version=3.5.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91"/>
  <add name="Microsoft SQL Server Compact Data Provider 4.0" invariant="System.Data.SqlServerCe.4.0" description=".NET Framework Data Provider for Microsoft SQL Server Compact" type="System.Data.SqlServerCe.SqlCeProviderFactory, System.Data.SqlServerCe, Version=4.0.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91"/>
  <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, processorArchitecture=MSIL" />
</DbProviderFactories>
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top