繁体   English   中英

asp.net core 2.0 Web应用程序无法连接到System i上的db2

[英]asp.net core 2.0 web app fails to connect to db2 on System i

我正在尝试开发一个Web应用程序以连接到i系列上的db2,作为该程序的一部分,我必须查询一个小文件,然后在视图中显示它的一些内容。

我是asp.net的新手,但在为Windows桌面开发时已使用iDB2Connection,ODBC和OleDb连接到同一服务器。

我的网络应用发出的问题如下:

DB2Exception:错误[08001] [IBM] SQL30081N已检测到通信错误。 使用的通信协议:“ TCP / IP”。 使用的通信API:“ SOCKETS”。 检测到错误的位置:“ xxx.xxx.xx.xx”。 通讯功能检测到错误:“连接”。 协议特定的错误代码:“ 10060”,“ ”,“ ”。 SQLSTATE = 08001。

失败的代码段:

public async Task<IActionResult> Index()
{
    DB2Connection con = new DB2Connection();
    con.ConnectionString = "Server=xxx.xxx.xx;Database=test;UID=xxx;
    pwd=xxxx;
    con.Open(); // fails here

    DB2Command com = new DB2Command("select * from lib.file", con);

    ...

我尝试添加Connection reset = false,将TCP keepalive添加到注册表,禁用防病毒/防火墙无济于事,读取连接超时作为10060 SQL代码30081N的原因。

请帮我解决这个问题,我已经为此困扰了很长时间。

您必须在连接字符串中指定端口号(在我的情况下是446):

Server=xxx.xxx.xxx.xxx:446;Database=test;UID=xxx;pwd=xxxx;

暂无
暂无

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

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