Entity Framework Insert有时在一个项目上工作,但总是在另一个项目上工作

时间:2016-03-15 12:30:04

标签: c# sql-server entity-framework

我今天早上去发布应用程序的最终草稿,当我去做最后的测试时,一切都运行良好,直到我上传到主数据库。一旦我这样做,我收到以下错误

  

抛出异常:'System.Data.SqlClient.SqlException'   System.Data.dll中

     

其他信息:与网络相关或特定于实例的错误   在建立与SQL Server的连接时发生。服务器是   没找到或无法访问。验证实例名称是否为   正确并且SQL Server配置为允许远程连接。   (提供者:TCP提供者,错误:0 - 等待操作超时。)

所以我去谷歌,发现它可能是连接字符串

<add name="ChangedEntities" connectionString="metadata=res://*/MillerModels.MillerModel.csdl|res://*/MillerModels.MillerModel.ssdl|res://*/MillerModels.MillerModel.msl;provider=System.Data.SqlClient;provider connection string=&quot;data source=ExternalAddress.com,1433;initial catalog=DataBase;persist security info=True;user id=ThisUSER;password=THISPASSWORD;;MultipleActiveResultSets=True;App=EntityFramework&quot;" providerName="System.Data.EntityClient" />

我检查过它看起来不错。我再次尝试同样的问题。 我创建了一个从相同位置连接到同一个数据库的控制台应用程序。

使用

<add name="MyEntities" connectionString="metadata=res://*/MILLERmODEL.csdl|res://*/MILLERmODEL.ssdl|res://*/MILLERmODEL.msl;provider=System.Data.SqlClient;provider connection string=&quot;data source=ExternalWebAddress.com,1433;initial catalog=DataBase;persist security info=True;user id=ThisUSER;password=THISPASSWORD;MultipleActiveResultSets=True;App=EntityFramework&quot;" providerName="System.Data.EntityClient" />

多次尝试这个,每次都有效。

这是SqlServer 2005

不工作植入:

public void Procurements(List<PROCUREMENT> procurements)
{
    using (var c  = new MillerVeneerEntities())
    {
        c.PROCUREMENTs.AddRange(procurements);
        c.SaveChanges();
    }
}

工作植入:

public void SaveUsers(USER user)
{
    using (var c = new MillerVeneerEntities())
    {
        c.USERS.Add(user);
        c.SaveChanges();
    }
}

0 个答案:

没有答案