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

如何自己做网站优化浙江seo

如何自己做网站优化,浙江seo,合肥手机建站模板,wordpress 加入代码前言 许多业务场景下需要处理和分析大量的数据,而 Excel 是业务人员常用的数据表格工具,因此,将 Excel 表格中内容上传并读取到网站,是一个很常见的功能,目前有许多成熟的开源或者商业的第三方库,比如 NPO…

image

前言

许多业务场景下需要处理和分析大量的数据,而 Excel 是业务人员常用的数据表格工具,因此,将 Excel 表格中内容上传并读取到网站,是一个很常见的功能,目前有许多成熟的开源或者商业的第三方库,比如 NPOI,EPPlus,Spire.Office for .NET 等等,今天分享一个使用 Magicodes.IE.Excel 上传和读取 Excel的方案,这是近年来一个比较受欢迎的开源的第三方库,下面我们用一个 Step By Step 例子来感受它的魅力。

Step By Step 步骤

  1. 安装 nuget 包

    Magicodes.IE.Excel
    Magicodes.IE.Core

  2. 创建一个 DTO 类

    using Magicodes.ExporterAndImporter.Core;namespace ExcelSample.BusinessEntities.Dtos
    {public partial class ImportDto{/// <summary>/// ID/// </summary>[ImporterHeader(Name ="ID")]public string ItemGuid { get; set; }/// <summary>/// 巡检编号/// </summary>[ImporterHeader(Name = "巡检编号")]public string InspectionNumber { get; set; }/// <summary>/// 详细地址/// </summary>[ImporterHeader(Name = "详细位置")]public string FormattedAddress { get; set; }/// <summary>/// 开始日期/// </summary>[ImporterHeader(Name = "开始日期")]public string BeginDate { get; set; }/// <summary>/// 截止日期/// </summary>[ImporterHeader(Name = "结束日期")]public string EndDate { get; set; }/// <summary>/// 故障描述/// </summary>[ImporterHeader(Name = "故障描述")]public string FaultInfo { get; set; }/// <summary>/// 单位名称/// </summary>[ImporterHeader(Name = "单位")]public string CustomerName { get; set; }/// <summary>/// 维修说明/// </summary>[ImporterHeader(Name = "维修说明")]public string HandleMeasuresOther { get; set; }}
    }	
    
  3. 写公共读取 Export 文件内容方法

    using Magicodes.ExporterAndImporter.Core;
    using Magicodes.ExporterAndImporter.Core.Extension;
    using Magicodes.ExporterAndImporter.Core.Models;
    using Magicodes.ExporterAndImporter.Excel;
    using System.Collections.Generic;
    using System.IO;
    using System.Threading.Tasks;namespace ExcelSample.Common
    {/// <summary>/// excel 工具类/// </summary>public static class ExportHelper{/// <summary>/// 通用导入 excel 文件/// </summary>/// <param name="filePath">Excel 文件路径</param>public static async Task<ImportResult<T>> ImportExcel<T>(string filePath) where T : class, new(){IImporter importer = new ExcelImporter();var result = await importer.Import<T>(filePath);return result;}}
    }
    
  4. 写上传 Excel 文件的业务方法

    public string UploadFile()
    {HttpFileCollection files = HttpContext.Current.Request.Files;if (files == null || files.Count == 0){throw new Exception("没有上传文件");}HttpPostedFile file = files[0];string fileExt = Path.GetExtension(file.FileName);if (fileExt != ".xlsx" && fileExt != ".xls"){throw new Exception("不是Excel文件");}string dir = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "ExcelImport");if (!Directory.Exists(dir)){Directory.CreateDirectory(dir);}string fileName = Path.GetFileNameWithoutExtension(file.FileName);string fileSaveName = string.Format("{0}{1}.xlsx", fileName, DateTime.Now.ToFlowWaterDate()); string fileSavePath = Path.Combine(dir, fileSaveName);_logger.Value.Info($"上传文件:[{fileSavePath}]");file.SaveAs(fileSavePath);return fileSavePath;
    }
    
  5. 写具体的读取 Excel 文件内容的业务方法

    public List<ImportDto> ReadExcel(string filePath)
    {var importData = ExportHelper.ImportExcel<ImportDto>(filePath).Result;var list = importData.Data.ToList();if (list.HasData()){return list;}return null;
    }
    
  6. 在控制器中写 API 向外提供上传和读取 Excel 的接口

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Net;
    using System.Text;
    using System.Threading.Tasks;
    using System.Web.Http;
    using ExcelSample.Contracts.IService;
    using ExcelSample.BusinessEntities.Dtos;
    namespace ExcelSample.WebAPI.Controllers.V1
    {[Authorize][RoutePrefix("api/v1/excelSample")]public partial class ExcelSampleController : BaseController{// ......[HttpPost][Route("uploadExcel")]public IHttpActionResult UploadExcel(){// 1. 上传文件string fileUpload = "";try{fileUpload = UploadFile();}catch (Exception ex){_log.Value.Error(ex, "上传文件失败!");return BadRequest(ex.Message);}// 2. 读取数据var list = ReadExcel(fileUpload);if (list== null || list.Count == 0){return BadRequest("文件没有数据或者数据格式不正确!");}// 3. 更新数据// 存储数据到数据库中return Ok(Success(result));}// ......}
    }
    
  7. 运行项目并在 Postman 中进行测试

总结

Magicodes.IE.Excel 功能不比 NPOI 等其他第三方库逊色,使用也相对比较简单,只需几行代码就可以读取 Excel 文件的内容,不失为一个新的读写 Excel 方案的选择,大家有兴趣可以到 GitHub 下载其源码深入了解。

http://www.yayakq.cn/news/376378/

相关文章:

  • 网站做的漂亮的企业网站app有哪些功能
  • 厚瑜珠海网站建设海东网站建设
  • 北京网站建设哪家强网络营销推广服务
  • 用asp做网站怎么美观企业网站有什么功能
  • 公司搭建网站步骤东莞 骏域网站建设
  • 网站建设优化建站想学网站建设 如何开始
  • 长沙工程招标公司深圳最好的seo培训
  • 改行做网站网站制作工作室哪家比较好
  • 南昌正规网站公司网站无后台可以上框架
  • 主播网站开发兰州网站维护
  • 海口商城网站建设广告牌设计
  • 如何评价一个企业的网站建设小程序商店代码
  • 自建房设计网站推荐私密浏览器直播
  • 静态网站入侵有没有做衣服的网站
  • 网站建设公司有哪些网站 建设后台
  • asp在线生成网站地图源代码公司变更股东需要多久
  • 企业建设银行网站登录不了设计方案ppt模板
  • 公司网站开发费分录是wordpress游戏网站模板
  • wordpress 文章状态优化网站打开速度
  • 大连网站设计江苏林润建设工程有限公司网站
  • wordpress 栏目 伪静态化徐州网站的优化
  • 网站目录改版如何301跳转呀做pc端网站特色
  • wap网站浏览器网易云外链wordpress
  • 网站建设维护 知乎那些网站做调查能赚钱
  • 为什么企业需要建设网站wordpress 反馈表
  • 如果自己弄网站求职简历模板免费下载
  • 教学成果奖网站建设怎样制作购物网站 微信转发
  • 大型门户网站是这样炼成的源代码谷歌 wordpress 插件
  • 新建网站怎么想谷歌和百度提交网站制作的重要流程图
  • 《设计》完整版快速网站优化哪家好