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" />
但是当我在另一个系统上启动我的应用程序时,它会出错:
标的提供商无法打开
为什么会出现此错误,解决方案是什么?
答案 0 :(得分:6)
这表明连接字符串对另一台计算机无效。也许它正在使用Windows身份验证,而其他用户或计算机无权访问它 - 或者它可能位于不同的网络上而无法访问服务器?我们无法在不知道它想要连接的内容的情况下真正诊断出来。
请尽可能多地提供关于连接的上下文,以及 正在处理的计算机与 工作的计算机之间的差异。
答案 1 :(得分:0)
你应该仔细检查你的连接字符串!
为确保数据库服务器/实例正确,数据库名称正确,您使用的用户ID和(或)密码有效。
答案 2 :(得分:0)
分布式事务处理协调器(DTC)可能已禁用。尝试使用组件服务管理工具在MSDTC的安全配置中启用DTC以进行网络访问。
转到组件服务/计算机/我的电脑/分布式事务处理协调器打开DTC /右键单击本地DTC /属性/安全选项卡/选中启用网络DTC访问/允许远程客户端。