4

我已经安装了 Visual Studio 2010 和 SQL Server 2008(在 64 位 Windows 7 上)。When I attempt to add a data source using the Add Connection dialogue, the dialogue is able to populate the servers, but when a server is chosen it is not able to populate the databases.

手动输入数据库名称并单击确定时,收到以下错误:“无法找到请求的 .Net Framework 数据提供程序。它可能未安装。”

我尝试过的事情:

  • 在 VS 2008 中遵循相同的过程可以成功。
  • 我已经卸载并重新安装了 VS 2010 和 SQL Server 2008(并安装了 SQL Server 2008 R2)但无济于事
  • 我已经手动注释掉了 machine.config(s) 中关联 SQL Server 精简版的行(每个论坛我发现与 VS 2008 中的类似问题有关)。徒劳无功。
  • 我创建了一个虚拟机,并且只安装了 VS 2010(在同一版本的 Windows 7 上)。这可行,但我宁愿不必在虚拟机中工作。
  • 已有数据源的应用程序将成功构建并按预期运行,但尝试从数据源更新 LINQ .edmx 文件时将返回错误。

还有其他人经历过这个/有一个有效的解决方案吗?谢谢您的帮助。

4

6 回答 6

4

对我来说解决这个问题的唯一方法是进入下面列出的两个机器配置并删除数据提供程序。基本上我进入了机器配置并改变了它。

<system.data>
    <DbProviderFactories>
        <add name="IBM DB2 for i5/OS .NET Provider" invariant="IBM.Data.DB2.iSeries" description=".NET Framework Data Provider for i5/OS" type="IBM.Data.DB2.iSeries.iDB2Factory, IBM.Data.DB2.iSeries, Version=12.0.0.0, Culture=neutral, PublicKeyToken=9cdb2ebfb1f93a26"/>
        <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.1.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91"/></DbProviderFactories>
    <DbProviderFactories/>
</system.data>

对此

<system.data>
    <DbProviderFactories></DbProviderFactories>
</system.data>

我知道这篇文章很旧,但我希望这个回复可以节省一些人很多时间。您也可以删除<DbProviderFactories/>标签,它也会修复它。

机器配置位置。"C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Config" "C:\Windows\Microsoft.NET\Framework\v4.0.30319\Config"

于 2011-09-16T13:51:37.230 回答
2

我设法通过从“C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Config”和“C:\Windows\Microsoft.NET\Framework\v4.0.30319\Config”移动 machine.config 文件来解决问题" 到另一个位置(作为备份),然后在 .NET Framework 4 客户端配置文件上运行修复。这重建了 machine.config 文件,现在一切正常。

于 2010-11-09T21:30:49.687 回答
1

我能够通过浏览到“C:\Windows\Microsoft.NET\Framework\v4.0.30319\Config”然后删除 machine.config 并将 machine.config.default 重命名为 machine.config 来解决这个问题, .

步骤: 1.) 浏览到“C:\Windows\Microsoft.NET\Framework\v4.0.30319\Config” 2.) 备份,然后删除 machine.config 3.) 创建 machine.config.default 的副本 4.)将 machine.config 的副本重命名为 machine.config

于 2011-04-11T17:29:41.987 回答
1

我遇到了同样的问题——我在我的电脑上卸载了 dot net 4 并重新安装了它——它解决了这个问题。

于 2010-12-08T22:40:58.543 回答
0

IBM iSeries Access 编辑 machine.config 文件似乎是一个问题。如果您编辑配置文件并删除附加节点(大约第 152 行),您应该能够再次添加连接。这是 MS 错误报告链接:

https://connect.microsoft.com/VisualStudio/feedback/details/652192/visual-studio-2010-add-connection-fails#tabs

感谢 Rick 提到错误报告!

于 2011-04-05T21:02:44.590 回答
0

经过多次咬牙切齿和在线搜索后,我发现了微软的回应,认为该问题是他们无法重现的。他们建议有问题的人重新映像他们的机器并重新开始。所以听起来其他一些人可能已经遇到过这个问题,但还不足以回答这个问题(或者任何似乎在没有重新映像的情况下成功修复它的人)

在将所有必要的数据保存到另一台 PC 后,我遵循了这个建议。第二次安装很顺利,我们已经启动并运行了。

于 2010-09-17T20:18:21.180 回答