导出excel

浪淘沙2年前后端198
@page
@model xxtsoft.Web.Entry.Pages.test2Model
@{
}
<form method="post">
    <button type="submit" asp-page-handler="down" class="btn">导出excel1</button>

    <button type="submit" asp-page-handler="down02" class="btn">导出excel2</button>
</form>
using Microsoft.AspNetCore.Mvc;
using Microsoft.AspNetCore.Mvc.RazorPages;

using MiniExcelLibs;

using System.Data;

using xxtsoft.Common;
using xxtsoft.Core.Common;

namespace xxtsoft.Web.Entry.Pages
{
    public class test2Model : PageModel
    {
        private readonly SqlSugar.ISqlSugarClient _db;
        public test2Model(SqlSugar.ISqlSugarClient db)
        {
            this._db = db;
            //_db.ChangeDatabase("1");
        }
        public void OnGet()
        {
          
        }


        public IActionResult OnPostDown()
        {
            DataTable dt = _db.Ado.GetDataTable("select * from qy_info");
            EPPlusHelper epp = new EPPlusHelper();
            return epp.outExcel(dt,"2.xlsx");
           //return Page();

        }
        public IActionResult OnPostDown02()
        {
            DataTable dt = _db.Ado.GetDataTable("select * from qy_info");          

            // 创建内存流用于存储 Excel 数据
            using var stream = new MemoryStream();

            // 使用 MiniExcel 将数据写入到内存流
            stream.SaveAs(dt);

            // 返回 Excel 文件作为文件下载响应
            return File(stream.ToArray(), "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet", "3.xlsx");


           

        }
    }
}


相关文章

asp.net core弹出对话框最佳实践

 public void OnGet()  {         ...

asp.net core post

<form class="layui-form layui-form-pane" action="" method...

asp.net core 获取url及参数

  var url = $"{Request.Scheme}://{Request.Host}{Request.Path}{Request....

asp.net core razor加载模板文件路径

  var templateContent = "${include(\"" + App.HostE...

sqlite数据库备份

  public IActionResult OnPostBf()   {      ...

普能html页面post到 cshtml页面,出现400错误解决方法

  [IgnoreAntiforgeryToken]  public class keywordsModel : PageModel  {    &n...

发表评论    

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。