if (FileUpload1.HasFile == false)//HasFile用来检查FileUpload是否有指定文件
        {
            Response.Write("<script>alert('请您选择Excel文件')</script> ");
            return;//当无文件时,返回
        }
        string IsXls = System.IO.Path.GetExtension(FileUpload1.FileName).ToString().ToLower();//System.IO.Path.GetExtension获得文件的扩展名
        if (IsXls != ".xls")
        {
            Response.Write("<script>alert('只可以选择Excel文件')</script>");
            return;//当选择的不是Excel文件时,返回
        }
        string filename = FileUpload1.FileName;              //获取Execle文件名  DateTime日期函数
        string savePath = Server.MapPath(("upfiles\\") + filename);//Server.MapPath 获得虚拟服务器相对路径
        FileUpload1.SaveAs(savePath);                        //SaveAs 将上传的文件内容保存在服务器上
        DataSet ds = ExcelSqlConnection(savePath, filename);  //调用自定义方法
        
        DataRow[] dr = ds.Tables[0].Select();//定义一个DataRow数组
        int rowsnum = ds.Tables[0].Rows.Count;
        if (rowsnum == 0)
        {
            Response.Write("<script>alert('Excel表为空表,无数据!')</script>");   //当Excel表为空时,对用户进行提示
        }

解决方案 »

  1.   

    DataRow 未将对象引用设置到对象的实例 ??怎么解决?
      

  2.   

    if(ds !=null && ds.Tables.Count() >0 )
    {
    DataRow[] dr = ds.Tables[0].Select();//定义一个DataRow数组
      int rowsnum = ds.Tables[0].Rows.Count;
      if (rowsnum == 0)
      {
      Response.Write("<script>alert('Excel表为空表,无数据!')</script>"); //当Excel表为空时,对用户进行提示
      }
    }
      

  3.   

    还是没有解决这个问题。。DataRow[] dr = ds.Tables[0].Select();//定义一个DataRow数组
    未将对象引用设置到对象的实例
      

  4.   

    DataRow[] dr = ds.Tables[0].Select();修改下
    DataRow dr=ds.Tables[0].Rows[0];你就指定第一行看看是否还会报错
      

  5.   

    DataRow[] dr = ds.Tables[0].AsEnumearble().ToArray();
      

  6.   

    楼上,这个AsEnumearble()是什么?
      

  7.   

    楼主,你是不是没有为临时表datatable新增列(Comlumn)?