provider:命名管道提供程序,错误:40 - 无法打开与SQL Server,pgsql的连接

时间:2016-05-30 12:43:07

标签: c# postgresql asp.net-web-api2 dapper

我正在使用Dapper连接到pgsql数据库。以下代码几天前就开始工作了。但不知道为什么它现在不起作用。相同的凭据与pgadmin3一起使用,但不与c#代码一起使用。 这是控制器方法,为简单起见,我在Get方法中编写了所有数据库代码。

以下代码是

public IEnumerable<Item> Get()
    {
        string connString = "Server=192.168.1.11;Database=db_alpha1;Uid=postgres;Pwd=xxxxxx";

        using (IDbConnection db = new SqlConnection(connString))
        {
            db.Open();

            return db.Query<Item>("Select * From items").ToList();
        }
    }

以下是db.Open();行上的错误:

  

建立与SQL Server的连接时发生与网络相关或特定于实例的错误。服务器未找到或无法访问。验证实例名称是否正确,以及SQL Server是否配置为允许远程连接。 (提供者:命名管道提供程序,错误:40 - 无法打开与SQL Server的连接)

另外,我已经配置了pg_hba.conf文件,添加了我的系统IP地址。

1 个答案:

答案 0 :(得分:0)

感谢@Steve。问题已经解决,这是一个愚蠢的错误,我取而代之 SqlConnection使用NpgsqlConnection,并添加了npgsql包。