标的提供商无法开放

时间:2011-02-25 07:49:20

标签: c#

HI,

我正在使用VS2010并使用Microsoft Entity Framework 4.0

我正在开发Windows应用程序。我在我的应用程序中绑定了几个组合;它工作正常。

void BindNatureOfIndustryCombo()
{
    using (var obj = new EASDBEntitiesCon())
    {
        var natureOfIndustryColl = from c in obj.IndustryTypes select c;
        var natureOfIndustryList = natureOfIndustryColl.ToList();

        cmbNatureOfIndustry.DataSource = natureOfIndustryList;
        cmbNatureOfIndustry.DisplayMember = "IndustryType";
        cmbNatureOfIndustry.ValueMember = "IndustryTypeID";

    }
}

ConnectionString

<add name="EntrpriseApplicationSuit.Properties.Settings.EASDBConnectionString" connectionString="Data Source=192.168.0.150\GSERVER;Initial Catalog=EASDB;Persist Security Info=True;User ID=sa;Password=$1234;MultipleActiveResultSets=True" providerName="System.Data.SqlClient" />

但是当我在另一个系统上启动我的应用程序时,它会出错:

标的提供商无法打开

为什么会出现此错误,解决方案是什么?

3 个答案:

答案 0 :(得分:6)

这表明连接字符串对另一台计算机无效。也许它正在使用Windows身份验证,而其他用户或计算机无权访问它 - 或者它可能位于不同的网络上而无法访问服务器?我们无法在不知道它想要连接的内容的情况下真正诊断出来。

请尽可能多地提供关于连接的上下文,以及 正在处理的计算机与 工作的计算机之间的差异。

答案 1 :(得分:0)

你应该仔细检查你的连接字符串!

为确保数据库服务器/实例正确,数据库名称正确,您使用的用户ID和(或)密码有效。

答案 2 :(得分:0)

分布式事务处理协调器(DTC)可能已禁用。尝试使用组件服务管理工具在MSDTC的安全配置中启用DTC以进行网络访问。

转到组件服务/计算机/我的电脑/分布式事务处理协调器打开DTC /右键单击本地DTC /属性/安全选项卡/选中启用网络DTC访问/允许远程客户端。