2010-05-04 102 views
0

我有代码从C3语言读取Excel:错误而读取Excel工作表

DataTable dtChildrenData = new DataTable(); 
      OdbcConnection oConn = null; 
      try 
      { 
       if (File.Exists(strSheetPath)) 
       { 
        oConn = new OdbcConnection(); 
        oConn.ConnectionString = @"DSN=Excel Files;DBQ=" + strSheetPath + @";DriverId=1046;FIL=excel 12.0;MaxBufferSize=2048;PageTimeout=5;"; 

        OdbcCommand oComm = new OdbcCommand(); 
        oComm.Connection = oConn; 
        oComm.CommandText = "Select * From [Sheet1$]"; 

        DataSet ds = new DataSet(); 
        OdbcDataAdapter oAdapter = new OdbcDataAdapter(oComm); 
        oConn.Open(); 
        oAdapter.Fill(ds); 
        dtChildrenData = ds.Tables[0]; 
       } 
      } 
      finally 
      { 
       oConn.Close(); 
      } 
      return dtChildrenData; 

但得到这个错误,当我上部署IIS Web应用程序。因为它在本地运行良好。没有找到

ERROR [IM002] [微软] [ODBC驱动程序管理器]数据源名称并没有指定默认驱动程序

如何解决这个问题。请让我知道,如果要回答这个问题(关于配置)

记住它运行完美的地方,从VS,当我同一台机器给错误

回答

0

你尝试引用上部署IIS上所需的任何信息似乎还没有创建的DSN。您可以通过打开Administrative Tools文件夹,然后启动Data Sources (ODBC)小程序来创建其中的一个。
看来你将不得不创建一个名为的Excel文件,如果你有一台机器,它目前的工作,你可能能够从该机器复制设置。

+0

这个问题仍然是unsolved..please指南 – 2010-05-06 07:35:55