you should be able to use IBM's OLE DB Data Provider, see the discussions here:
http://groups.google.com/groups?q=ado.net+db2&hl=en&lr=&ie=UTF-8&oe=UTF-8&selm=ehiLWd%23ECHA.1956%40cpmsftngxa07&rnum=4or you can always ODBC.NET:
http://msdn.microsoft.com/downloads/default.asp?url=/downloads/sample.asp?url=/msdn-files/027/001/668/msdncompositedoc.xml

解决方案 »

  1.   

    http://www.connectionstrings.com/maybe useful for you!
      

  2.   

    思归兄,我有用了ODBC.NET。我用的是系统数据源,但是程序执行的时候报错呀。
    错误信息如下:
    ERROR [08S01] [IBM][Client Access ODBC 驱动程序(32 位)][DB2/400 SQL] 通信链路故障。 COMM RC=0x5 ERROR [IM006] [Microsoft][ODBC 驱动程序管理器] 驱动程序的 SQLSetConnectAttr 失败 ERROR [01000] [Microsoft][ODBC 驱动程序管理器] 驱动程序不支持这个应用程序请求的 ODBC 行为的版本 (参见 SQLSetEnvAttr)。 
      

  3.   

    还有如果我用的用户数据源的话也有提示出错,我的源代码如下:
              OdbcConnection conn = new OdbcConnection("DSN=as400;UID=CASE;PWD=CASE");
              string strSel="select xthydm,xthymc from xtm17 where xthydm>'100' and xthydm<'200' order by xthydm";
              DataSet ds=new DataSet();
              OdbcDataAdapter myAdapter=new OdbcDataAdapter(strSel,conn);
     myAdapter.Fill(ds,"test");
     Response.Write(ds.Tables["test"].DefaultView.Count);
    出错信息如下:
        ERROR [IM002] [Microsoft][ODBC 驱动程序管理器] 未发现数据源名称并且未指定默认驱动程序 但是呢原来开发的c/s程序呢用这个用户数据源就没有问题。 一头雾水!
       
      

  4.   

    请问思归:使用IBM's OLE DB Data Provider来建立连接串是不是要安装IBM什么东东????????
    我的连接串如下:
    Provider=DB2OLEDB;Cache Authentication=False;Password=case;PersistSecurity Info=True;User ID=case;Initial Catalog=as400;Network Transport Library=TCPIP;Host CCSID=37;PC Code Page=1252;Network Address=10.75.128.9;Network Port=446;Package Collection=QGPL;Default Schema=casedtalib系统出错提示:
      没有可用的错误信息:REGDB_E_CLASSNOTREG(0x80040154)。]......
      ...
      ...
      ...
      [InvalidOperationException: 未在本地计算机上注册“DB2OLEDB”提供程序。]
      

  5.   

    我这里当然安装了DB2(IBM AS/400)的客户端,我的原来的C/S结构的程序也能正常运行。
    不知道是不是它的客户端的软件版本(for win95/NT)?太低!
      

  6.   

    在其他的环境用ODBC没有问题!