当前位置: 首页 > news >正文

怎么做电商网站推广哈尔滨品牌建站软件

怎么做电商网站推广,哈尔滨品牌建站软件,马蜂窝旅游网站怎么做,wordpress 悬浮按钮前言总是有很多朋友咨询Magicodes.IE如何基于ASP.NET Core导出Excel#xff0c;出于从框架的体验和易用性的角度#xff0c;Magicodes.IE决定对Excel的导出进行独立封装#xff0c;以便于大家更易于使用#xff0c;开箱即用。注意#xff1a;Magicodes.IE是从框架的易用性… 前言总是有很多朋友咨询Magicodes.IE如何基于ASP.NET Core导出Excel出于从框架的体验和易用性的角度Magicodes.IE决定对Excel的导出进行独立封装以便于大家更易于使用开箱即用。注意Magicodes.IE是从框架的易用性和体验的角度对Excel导出进行了封装但是希望大家先理解原理后再使用。1.安装包Install-Package Magicodes.IE.Excel.AspNetCore2.引用命名空间using Magicodes.ExporterAndImporter.Excel.AspNetCore;3.直接使用XlsxFileResult参考Demo如下所示 [ApiController][Route(api/[controller])]public class XlsxFileResultTests : ControllerBase{/// summary/// 使用Byte数组导出Excel文件/// /summary/// returns/returns[HttpGet(ByBytes)]public async TaskActionResult ByBytes(){//随机生成100条数据var list GenFu.GenFu.ListOfExportTestDataWithAttrs(100);var exporter new ExcelExporter();var bytes await exporter.ExportAsByteArrayExportTestDataWithAttrs(list);//使用XlsxFileResult进行导出return new XlsxFileResult(bytes: bytes);}/// summary/// 使用流导出Excel文件/// /summary/// returns/returns[HttpGet(ByStream)]public async TaskActionResult ByStream(){//随机生成100条数据var list GenFu.GenFu.ListOfExportTestDataWithAttrs(100);var exporter new ExcelExporter();var result await exporter.ExportAsByteArrayExportTestDataWithAttrs(list);var fs new MemoryStream(result);return new XlsxFileResult(stream: fs, fileDownloadName: 下载文件);}/// summary/// 使用泛型集合导出Excel文件/// /summary/// returns/returns[HttpGet(ByList)]public async TaskActionResult ByList(){var list GenFu.GenFu.ListOfExportTestDataWithAttrs(100);return new XlsxFileResultExportTestDataWithAttrs(data: list);}}如上所示引用 Magicodes.IE.Excel.AspNetCore之后导出就会变得如此简单。值得注意的是使用XlsxFileResult需引用包Magicodes.IE.Excel.AspNetCoreXlsxFileResult继承自ActionResult目前支持字节数组、流和泛型集合为参数的Excel文件下载支持传递下载文件名参数名fileDownloadName如不传则自动生成唯一的文件名核心实现在Magicodes.IE.Excel.AspNetCore中我们添加了自定义的ActionResult——XlsxFileResult核心参考代码如下所示 /// summary/// Excel文件ActionResult/// /summary/// typeparam nameT/typeparampublic class XlsxFileResultT : XlsxFileResultBase where T : class, new(){/// summary////// /summary/// param namedata/param/// param namefileDownloadName/parampublic XlsxFileResult(ICollectionT data, string fileDownloadName null){FileDownloadName fileDownloadName;Data data;}public string FileDownloadName { get; }public ICollectionT Data { get; }public async override Task ExecuteResultAsync(ActionContext context){var exporter new ExcelExporter();var bytes await exporter.ExportAsByteArray(Data);var fs new MemoryStream(bytes);await DownloadExcelFileAsync(context, fs, FileDownloadName);}}/// summary////// /summarypublic class XlsxFileResult : XlsxFileResultBase{/// summary////// /summary/// param namestream/param/// param namefileDownloadName/parampublic XlsxFileResult(Stream stream, string fileDownloadName null){Stream stream;FileDownloadName fileDownloadName;}/// summary////// /summary/// param namebytes/param/// param namefileDownloadName/parampublic XlsxFileResult(byte[] bytes, string fileDownloadName null){Stream new MemoryStream(bytes);FileDownloadName fileDownloadName;}public Stream Stream { get; protected set; }public string FileDownloadName { get; protected set; }public async override Task ExecuteResultAsync(ActionContext context){await DownloadExcelFileAsync(context, Stream, FileDownloadName);}}/// summary/// 基类/// /summarypublic class XlsxFileResultBase : ActionResult{/// summary/// 下载Excel文件/// /summary/// param namecontext/param/// param namestream/param/// param namedownloadFileName/param/// returns/returnsprotected virtual async Task DownloadExcelFileAsync(ActionContext context,Stream stream,string downloadFileName){var response context.HttpContext.Response;response.ContentType application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;if (downloadFileName null){downloadFileName Guid.NewGuid().ToString(N) .xlsx;}if (string.IsNullOrEmpty(Path.GetExtension(downloadFileName))){downloadFileName .xlsx;}context.HttpContext.Response.Headers.Add(Content-Disposition, new[] {attachment; filename HttpUtility.UrlEncode(downloadFileName)});await stream.CopyToAsync(context.HttpContext.Response.Body);}}欢迎大家多多PR并且前来解锁更多玩法。最后教程已上传Github有兴趣有精力的朋友可以帮忙PR一下单元测试由于精力有限先手测了可参考ASP.NET Core 中的测试控制器逻辑 | Microsoft Docs写个功能几分钟到十几分钟码个文档要半天就此结束。Magicodes.IE导入导出通用库支持Dto导入导出、模板导出、花式导出以及动态导出支持Excel、Csv、Word、Pdf和Html。Githubhttps://github.com/dotnetcore/Magicodes.IE码云手动同步不维护https://gitee.com/magicodes/Magicodes.IE相关库会一直更新在功能体验上有可能会和本文教程有细微的出入请以相关具体代码、版本日志、单元测试示例为准。
http://www.pierceye.com/news/439360/

相关文章:

  • 网站开发深天津设计公司排行榜
  • 做tcf法语听力题的网站公司网页简介
  • 十堰做网站最专业的公司深圳企业网查询
  • 购物网站大全排名调查drupal与wordpress哪个容易
  • 网站建设彳金手指排名网站开发完没人运营
  • 网站建设是设开发公司质量管理流程
  • 金沙网站怎么做代理wordpress tag=
  • 做网站必须花钱吗建筑人才网证书查询
  • 0基础网站建设模板工商注册官方网站
  • 河南网站设计公司价格网站在建设中是什么意思
  • 网站建设公司的成本有哪些方面四川省城乡建设网查询
  • 和什么人合作做游戏视频网站做推送网站
  • 做竞价网站访问突然变少施工企业负责人带班检查计划
  • 网站统计数据分析wordpress安装 第二步
  • 网站续费续的是什么钱Wordpress1002无标题
  • 公司入口网站appui设计师创意平台
  • 济南住房和城乡建设厅网站影视广告创意拍摄
  • 卢松松网站源码网站建设讲师招聘
  • wordpress建站网页无法运vs网站开发表格大小设置
  • 网站怎么制作教程科技小论文怎么写
  • 青岛外贸建设网站制作小程序制作页面教程
  • wordpress 整合phpseo推广有效果吗
  • 毕业设计做网站代码营销推广软文案例
  • 网站seo 文章转载 修改标题手机oa办公系统下载
  • 营销型网站设计工资商城是什么平台
  • 有没有可以在线做化学实验的网站乐从网站制作
  • 网站qq 微信分享怎么做的网络销售网站有哪些
  • 长沙电商网站制作网页设计模板素材旅游
  • 阿里巴巴 网站 建设wordpress支付宝红包
  • 如何建一个企业网站网站建设方案保障措施