2

说明:在为 Visual Studio 2010 (.NET 4.0) 安装 Firebird 客户端和 DDEX 后,我无法从 Visual Sutio 2010 (Professional)->Server Explorer->Data Connections->Add Connection 添加到 firebird 的新连接。

执行步骤: - 安装 firebirdclient (NETProvider-2.6.0.msi -> C:\Program Files\FirebirdClient) - 将程序集 (FirebirdSql.Data.FirebirdClient.dll) 添加到 gac 证明:

C:\Program Files\FirebirdClient>gacutil /i

firebirdsql.data.firebirdclient.dll Microsoft (R) .NET 全局程序集缓存实用程序。版本 4.0.30319.1 版权所有 (c) Microsoft Corporation。版权所有。

Assembly successfully added to the cache
  • 得到了 DDEX 2.0.5,-> C:\Program Files\FirebirdClient\DDEX205
  • 将 FirebirdSql.VisualStudio.DataTools.dll 添加到 gac(有人写它可能会有所帮助)
C:\Program Files\FirebirdClient\DDEX205>gacutil

/i FirebirdSql.VisualStudio.Data Tools.dll Microsoft (R) .NET 全局程序集缓存实用程序。版本 4.0.30319.1 版权所有 (c) Microsoft Corporation。版权所有。

Assembly successfully added to the cache
  • 编辑VS2010版FirebirdDDEXProvider32

@="Firebird 的 .NET Framework 数据提供程序" "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}”

也安装了它(整个文件) - 在我添加的 C:\Windows\Microsoft.NET\Framework\v4.0.30319\Config 中

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

在我添加

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

我可以通过 FbConnection 连接到 firebird db

在 Visual Studio 2010 IDE 中,我可以服务器资源管理器 -> 数据连接 -> 添加连接并选择 Firebird 数据源,但我再也没有得到任何进一步的信息!只要我在任何字段中按下一个键,窗口就会消失(或者如果我选择一种语言、方言,窗口就会消失......)。

有谁能够帮我?

4

2 回答 2

4

我的天啊

C:\Program Files\FirebirdClient>gacutil /l Firebirdsql.data.firebirdclient Microsoft (R) .NET 全局程序集缓存实用程序。版本 4.0.30319.1 版权所有 (c) Microsoft Corporation。版权所有。

全局程序集缓存包含以下程序集:
Firebirdsql.data.firebirdclient, Version= 2.6.0.0 , Culture=neutral, PublicKeyTo ken= 3750abcc3150b00c , processorArchitecture=MSIL

项目数 = 1

  • 版本是2.6.0.0而不是 4.0.0.0 =>

它在 .NET 4.0 上运行,但程序集版本为 2.6.0.0

在此重新启动视觉工作室之后,它就可以工作了!

于 2010-12-26T18:56:34.717 回答
2

在 Visual Studio 2010 IDE 中,我可以服务器资源管理器 -> 数据连接 -> 添加连接并选择 Firebird 数据源,但我再也没有得到任何进一步的信息!只要我在任何字段中按下一个键,窗口就会消失(或者如果我选择一种语言、方言,窗口就会消失......)。

确保编辑 为 windows 7 64 位调用的 .NET 框架文件也Machine.config编辑C:\Windows\Microsoft.NET\Framework\v4.0.30319\ConfigC:\Windows\Microsoft.NET\Framework64\v4.0.30319\Config

首先,您必须通过 gacutil 获取要放置在 Machine.config 文件中的准确值:

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

添加提供者的示例:

<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>
于 2011-04-03T01:29:31.727 回答