欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

c# 将Datatable数据导出到Excel表格中

程序员文章站 2022-07-19 16:36:26
话不多说,请看代码: public fileresult getexcelfile() { if (session["begindate"...

话不多说,请看代码:

public fileresult getexcelfile()
    {
      if (session["begindate"] != null)
      {
        string bdate = session["begindate"].tostring();
        datetime ld = convert.todatetime(session["lastdate"].tostring());
        datetime ldate = ld.adddays(1);
        string lldate = ldate.tostring("yyyy-mm-dd");
        int ptkey = convert.toint32(session["process_ptr"]);
        string procesql = "select * from assay_process where rkey="+ptkey;
        datatable procedt = sqlhelper.querytable(procesql);
        idataparameter[] idatatitle = new sqlparameter[3];
        idatatitle[0] = new sqlparameter("@begindate", bdate);
        idatatitle[1] = new sqlparameter("@lastdate", lldate);
        idatatitle[2] = new sqlparameter("@rkey", ptkey);
        dataset dttitle = sqlhelper.runproceduresbyparameter("pro_getassalyinfobyexportprint", idatatitle);
        datatable dt = dttitle.tables[0];
        string outstr = excelexport.outexcel(dt);
        byte[] filecontents = encoding.utf8.getbytes(outstr.tostring());
        return file(filecontents, "application/ms-excel", "" + procedt.rows[0]["processname"].tostring().trim() + "化验单据(" + bdate.trim() + "-" + lldate.trim() + ").xls"); 
      }
      else
      {
        string qua_no = session["quano"].tostring();
        idataparameter[] idatatitle = new sqlparameter[1];
        idatatitle[0] = new sqlparameter("@qua_no", qua_no);
        dataset dttitle = sqlhelper.runproceduresbyparameter("pro_getassalyinfobyqua_no", idatatitle);
        datatable dt = dttitle.tables[0];
        string outstr = excelexport.outexcel(dt);
        byte[] filecontents = encoding.utf8.getbytes(outstr.tostring());
        return file(filecontents, "application/ms-excel", "化验单据(" + qua_no.trim()+ ").xls"); 
      }
    }

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持!