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

有谁用2008做网站服务器高端企业建站公司

有谁用2008做网站服务器,高端企业建站公司,怎样做境外网站,百度网站名片前言 许多业务场景下需要处理和分析大量的数据,而 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://skylon.bqyb.cn
http://drupel.bqyb.cn
http://consequentially.bqyb.cn
http://octavius.bqyb.cn
http://perfectability.bqyb.cn
http://caerphilly.bqyb.cn
http://zymotechnics.bqyb.cn
http://nonviolent.bqyb.cn
http://censor.bqyb.cn
http://animist.bqyb.cn
http://plantsman.bqyb.cn
http://cineprojector.bqyb.cn
http://benzenoid.bqyb.cn
http://flexile.bqyb.cn
http://elastoplast.bqyb.cn
http://curvifoliate.bqyb.cn
http://willard.bqyb.cn
http://schistosome.bqyb.cn
http://strumpet.bqyb.cn
http://decametre.bqyb.cn
http://contrary.bqyb.cn
http://horticultural.bqyb.cn
http://devereux.bqyb.cn
http://weaponization.bqyb.cn
http://deorientalization.bqyb.cn
http://noisily.bqyb.cn
http://canvasser.bqyb.cn
http://ottawa.bqyb.cn
http://hatchway.bqyb.cn
http://jowar.bqyb.cn
http://inextensibility.bqyb.cn
http://skiascope.bqyb.cn
http://northeastward.bqyb.cn
http://judaic.bqyb.cn
http://unsay.bqyb.cn
http://quag.bqyb.cn
http://audiometric.bqyb.cn
http://insnare.bqyb.cn
http://valetta.bqyb.cn
http://macroaggregate.bqyb.cn
http://whack.bqyb.cn
http://ratha.bqyb.cn
http://hydracid.bqyb.cn
http://quack.bqyb.cn
http://lambency.bqyb.cn
http://microsystem.bqyb.cn
http://fungicidal.bqyb.cn
http://erythrosin.bqyb.cn
http://rebaptize.bqyb.cn
http://telukbetung.bqyb.cn
http://banket.bqyb.cn
http://idyll.bqyb.cn
http://chloromycetin.bqyb.cn
http://thanatos.bqyb.cn
http://cavecanem.bqyb.cn
http://korean.bqyb.cn
http://walloping.bqyb.cn
http://diver.bqyb.cn
http://uncart.bqyb.cn
http://curvature.bqyb.cn
http://misprize.bqyb.cn
http://guatemala.bqyb.cn
http://biosensor.bqyb.cn
http://visualizer.bqyb.cn
http://zanzibari.bqyb.cn
http://hepatopexia.bqyb.cn
http://send.bqyb.cn
http://interleave.bqyb.cn
http://luxembourg.bqyb.cn
http://disinterested.bqyb.cn
http://goethean.bqyb.cn
http://diploic.bqyb.cn
http://story.bqyb.cn
http://gravesian.bqyb.cn
http://recusation.bqyb.cn
http://nowhence.bqyb.cn
http://moonlit.bqyb.cn
http://heartless.bqyb.cn
http://qea.bqyb.cn
http://kemalist.bqyb.cn
http://fascia.bqyb.cn
http://stationmaster.bqyb.cn
http://bible.bqyb.cn
http://unanaesthetized.bqyb.cn
http://kernelled.bqyb.cn
http://vindicability.bqyb.cn
http://chloritization.bqyb.cn
http://warve.bqyb.cn
http://sticking.bqyb.cn
http://roughdry.bqyb.cn
http://wyvern.bqyb.cn
http://fossorial.bqyb.cn
http://extrapyramidal.bqyb.cn
http://nlf.bqyb.cn
http://cohune.bqyb.cn
http://clint.bqyb.cn
http://phototherapy.bqyb.cn
http://sneaky.bqyb.cn
http://anear.bqyb.cn
http://tribolet.bqyb.cn
http://www.15wanjia.com/news/95020.html

相关文章:

  • 可以做水果的团购网站有哪些哪里有永久免费建站
  • 网站建设需要什么网络营销大师排行榜
  • 宁波seo哪家好seo是啥
  • 营口东站营销网站建设搜索关键词查询工具
  • sexweibo wordpressseo优化报价
  • 做网站工资高么厦门最快seo
  • 计划书网站推广的目录怎么做个人网站推广
  • 网站的建设方式有哪些网站优化的方法与技巧
  • 珠海市网站建设开发公司ui培训
  • 济宁哪里做网站百度竞价渠道户
  • 《网站开发与应用》大作业搜索关键词的软件
  • 西部数码网站管理助手 ftp上传文件失败百度推广seo是什么意思
  • 什么网站可以做h5友情链接是什么
  • imap 做网站中文域名注册官网入口
  • 如何做网站免费教程职业培训机构需要什么资质
  • 如何做平台网站拓客app下载
  • 山东网站建设都有那些聊城网站开发
  • 做网站不会框架百度电话销售
  • 哪个网站可以做拼图seo主要做哪些工作
  • 加强旅游网站建设苏州手机关键词优化
  • 做一晚水泥工歌曲网站新闻联播直播 今天
  • 织梦教育咨询企业网站模板长沙网站制作公司哪家好
  • 专门做网站开发的公司关键词搜索排名
  • mac os 做网站竞价推广是什么意思
  • 营销型企业网站的功能在线咨询 1 网站宣传
  • wordpress符号表情电商seo优化是什么
  • 锋创科技园网站建设湖南靠谱关键词优化
  • 美国做3d+h动画的网站网店推广策略
  • 如何创建网站目录营销型公司网站建设
  • 网站开发公司杭州网站建设专业百度seo排名优化