我通过 DbLINQ 使用 LINQ to SQL (PostgreSQL)。
我在执行 LINQ to PostgreSQL 时遇到问题。我用 dbmetal 成功生成了 .dbml 和 .cs 文件,我想我得到了所有的引用,代码编译了。参考:
DbLinq
DbLinq.PostgreSql
DbLinq.SqlServer
Npgsql
using DbLinq.PostgreSql;
我得到一个例外:
{“建立与 SQL Server 的连接时发生与网络相关或特定于实例的错误。未找到或无法访问服务器。验证实例名称是否正确以及 SQL Server 是否配置为允许远程连接。(提供程序:命名管道提供程序,错误:40 - 无法打开与 SQL Server 的连接)"}
内部异常:
{“该系统找不到指定的路径”}
连接字符串:
server=127.0.0.1;database=xxxxx;user id=postgres;password=xxxxx;
ili
server=localhost;database=xxxxx;user id=postgres;password=xxxxx;
如果我尝试使用 NpgsqlConnectionStringBuilder 我得到:
HOST=localhost;PORT=5432;PROTOCOL=3;DATABASE=xxxxx;USER ID=postgres;PASSWORD=xxxxx;SSL=False;SSLMODE=Disable;TIMEOUT=15;SEARCHPATH=;POOLING=True;CONNECTIONLIFETIME=15;MINPOOLSIZE= 1;MAXPOOLSIZE=20;SYNCNOTIFICATION=False;COMMANDTIMEOUT=20;ENLIST=False;PRELOADREADER=False;USEEXTENDEDTYPES=False;INTEGRATED SECURITY=False;COMPATIBLE=2.0.12.0;APPLICATIONNAME=
有一个例外{"Keyword not supported: 'host'."}
我在 Win7 64 位、Postgres 9.2 64 位上通过 SquirrelSQL 和 jdbc 驱动程序成功连接
编辑:这很好
xxxxxDC dc = new xxxxxDC("server=127.0.0.1;database=xxxxx;user id=postgres;password=xxxxx;DbLinqProvider=PostgreSql;");
var q = from r in dc.xxxxx
select r;
但我得到一个错误
dataGridView1.DataSource = q
现在我知道这是因为查询没有立即执行。但问题依然存在。“服务器未找到或无法访问”
F1!
LP