ASP.NET MVC5 Excel导入总结

因为最近在做一个小项目,负责的是文件上传和Excel导入导出,在开发过程中也遇到挺多问题,主要是在修改的过程中,

总觉得自己的代码太复杂,不利于后期的维护和修改,所以一直想尽办法进行封装。最终代码还是相对简洁一点。

因为开发经验的不足,可能我最后说的相对简洁,就是你们一开始开发时的想法。但是学习过程就是这样吧。

 

描述一下项目的需求:

其实也比较简单,做的是类似信息管理系统,多个页面都需要有导入Excel数据的功能。

然后一开始是这样的思路:

就这样,在每一个页面都写了上传文件的HTML代码,提交到相应的控制器,控制器做简单的处理后,转到逻辑层去执行导入Excel数据的代码。后来改代码,真的麻烦!!!

后面想到有部分视图这东西,一开始没有用是觉得每个文件上传都是上传到不同的地址,后来想想在每个页面用Ajax提交到不同的控制器就好了。

再后来又想,为什么要提交到不同的控制器?直接提交到一个控制器就行了,然后在这个控制器进行判断,执行不同的Excel导入类就行了。结果就写成这样:

因为每张数据表都对应一个导入类,所以导入类没有办法写成一个

 

 部分视图的代码:

主要是红色框的部分,每个页面都加载这个部分视图,这样在上传文件部分做修改的时候,就只要修改部分视图这里了。

其中一个页面的js代码:

控制器代码:

然后ExcelImport.DataSaveInDB();方法里面就是根据表名,去执行相应的Excel导入类

代码比以前少了很多,维护起来也方便很多。

  • 0
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值