zoukankan      html  css  js  c++  java
  • 打包成zip

    protected void btnExportZip_Click(object sender,EventArgs e)

    {

    string archiveName=String.Format("zip文件名{0}-{1}.zip",CurrentUser.DepartmentName,DateTime.Now.ToString("yyyy-MM-dd");

    Resoponse.CotentType="application/zip";

    Response.AddHeader("content-disposition","attachment;filename=""+HttpUtility.UrlEncode(archiveName,Encoding.UTF8)+""");

    var docHelper=new DocHelper();

    var template=Server.MapPath("~/Template/export/template.doc");//模板

    var streamList=new List<MemoryStream>();

    //数据源赋值

    using(var zip=new ZipFile(Encoding.UTF8))

    {

    foreach(var proposal in proposaList)

    {

    var newDs=new Dataset();

    var dt1=ListExtend.ListToDataTable(new List<Proposal>(){proposal});// T转换为datatable

    dt1.TableName="table";

    newDs.Tables.add(dt1);

    //关联建议人 把建议人数据放入提案数据的尾部

    var suggesterList=ProposerService.GetListByProposalId(proposal.Id);

    var dtSuggester=ListExtend.ListToDataTable(suggesterList);

    dtSuggester.TableName="Proposer";

    newDs.Table.Add(dtSuggester);

    newDs.Relations.Add("ProposalWithProposer",dt1.Columns["Id"],dtSuggester.Colums["ProposalId"]);

    docHelper.DataSetList=new List<DataSet>(){newDs};

    var fileName=string.Format("{0}-{1}-政协提案交办全文.doc",proposal.Num,proposal.Title);

    var stream=docHelper.ExportStream(template);

    stream.Seek(0,SeekOrigin.Begin);

    zip.AddEntry(fileName,stream);

    streamList.Add(stream);

    }

    zip.save(Response.OutputStream);

    foreach(var memoryStream in streamList)

    {

    memoryStream.Close();

    }

    }

    }

  • 相关阅读:
    CSS边框(圆角、阴影、背景图片)
    CSS3浏览器兼容
    HTML5全局属性
    HTLM5新增属性
    HTML5标签
    如何开始使用bootstrap
    重新了解Java基础(三)-运行机制&HelloWorld
    重新了解Java基础(二)-Java的特性
    Java关键字之native
    重新了解Java基础(一)
  • 原文地址:https://www.cnblogs.com/sunzgod/p/4343725.html
Copyright © 2011-2022 走看看