【问题标题】:Visual Studio 2010 Add Connection dialogue not populating databasesVisual Studio 2010 添加连接对话框不填充数据库
【发布时间】:2010-08-17 15:10:11
【问题描述】:

我已经安装了 Visual Studio 2010 和 SQL Server 2008(在 64 位 Windows 7 上)。当我尝试使用添加连接对话框添加数据源时,对话框可以填充服务器,但选择服务器时,它无法填充数据库。

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

我尝试过的事情:

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

还有其他人经历过这种情况/有有效的解决方案吗?感谢您的帮助。

【问题讨论】:

    标签: visual-studio-2010 dataprovider


    【解决方案1】:

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

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

    我知道这篇文章已经过时了,但我希望这个回复可以为一些人节省很多时间。您也可以删除&lt;DbProviderFactories/&gt; 标签,它也会修复它。

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

    【讨论】:

    • 非常感谢。这真的节省了我的时间。
    • 很高兴听到 Teddy 为您节省了时间。当我可以帮助这样的人时,我真的很开心。
    【解决方案2】:

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

    【讨论】:

      【解决方案3】:

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

      【讨论】:

        【解决方案4】:

        我能够通过浏览“C:\Windows\Microsoft.NET\Framework\v4.0.30319\Config”然后删除 machine.config 并将 machine.config.default 重命名为机器配置。

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

        【讨论】:

        • 天啊!在网上搜索了几天,我终于找到了您的解决方案。谢谢,谢谢,谢谢!
        【解决方案5】:

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

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

        【讨论】:

        • 啊,我刚遇到这个问题。已经浪费时间重新安装东西了。
        • 是的,我也这样做了..我最终重新映像了机器并且它工作了。
        【解决方案6】:

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

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

        感谢 Rick 提及错误报告!

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 2011-09-20
          • 2012-05-07
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多