繁体   English   中英

System.Data.EntityException:基础提供程序在打开时失败

[英]System.Data.EntityException: The underlying provider failed on Open

我正在构建一个在服务器计算机上具有数据库的应用程序,并且正在使用此方法进行数据库访问:

public static string GetDefaultConnectionString()
{
    //get my db info from ini file
    dbinfo DatabaseInfo = new dbinfo();
    DatabaseInfo = GetDatabaseInfo();
    if (DatabaseInfo.dbName == "" || DatabaseInfo.Password == "" || DatabaseInfo.Server == "" || DatabaseInfo.UserId == "")
    {
        throw new Exception("Database config file is not valid");
    }
    else
    {
        MessageBox.Show("Db name " + DatabaseInfo.dbName);
        MessageBox.Show("User " + DatabaseInfo.UserId);
        MessageBox.Show("Db Pass " + DatabaseInfo.Password);
        MessageBox.Show("Db Server " + DatabaseInfo.Server);
    }
    string conStrIntegratedSecurity = new System.Data.EntityClient.EntityConnectionStringBuilder
    {
        Metadata = "res://*/Model1.csdl|res://*/Model1.ssdl|res://*/Model1.msl",
        Provider = "System.Data.SqlClient",
        ProviderConnectionString = new System.Data.SqlClient.SqlConnectionStringBuilder
        {
            InitialCatalog = DatabaseInfo.dbName,
            DataSource = DatabaseInfo.Server,
            IntegratedSecurity = true,
            UserID = DatabaseInfo.UserId,
            Password = DatabaseInfo.Password,
            MultipleActiveResultSets = true,
            ConnectTimeout = 0,
            MaxPoolSize = 500,
        }.ConnectionString
    }.ConnectionString;
    //MessageBox.Show(conStrIntegratedSecurity);
    return conStrIntegratedSecurity;
}

它在服务器PC上工作正常。 但是,当我在任何客户端计算机上安装此应用程序时,它无法打开连接,并且显示以下错误消息:

System.Data.EntityException: The underlying provider failed on Open. ---> 
System.Data.SqlClient.SqlException: Cannot open database "dbName" requested by the login. The login failed.
Login failed for user 'ServerName\User'.

有人知道为什么会这样吗?

我只是用

 IntegratedSecurity = true,

 IntegratedSecurity = false,

而且有效!

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM