2018-03-19 关于导入功能

作者:姚成栋


先要明白,导入功能无非是把excel等表中的数据放到数据库中,所以重要的部分就是取数据和添加数据。

First of all,你得弄一个导入的模板,excel中规定好单元格格式。然后,上传好excel放到一个临时文件夹,批量向数据库中插入数据。插入时,

  1. 如果是枚举可以以这种方式来取数据:
actypedesc = reader.GetCellValue(row, 0);
                actypedesc = actypedesc == null ? "" : actypedesc;
                actypedesc = actypedesc.Replace("\r", "").Replace("\n", "").Trim();
                switch (actypedesc)
                {
                    case "A320": actype = "1"; break;
                    case "B733": actype = "2"; break;
                    default: actype = ""; break;
                }
                if (actype == "")
                {
                    throw new Common.WebException.AlertRefreshParentException("第【" + row + "】行机型错误!目前只能识别A320/B733中一种");
                }
  1. 如果是只存tid的要先将name转成tid:
trainsitename = reader.GetCellValue(row, 1);
                trainsitename = trainsitename == null ? "" : trainsitename;
                trainsitename = trainsitename.Replace("\r", "").Replace("\n", "").Trim();
                Model.QtBiBasDictionary paras = new Model.QtBiBasDictionary();
                paras.BD_CName = trainsitename;
                Model.QtBiBasDictionary[] inseqb = DB.QtBiBasDictionary.GetBasDictionaryList(loginUser, paras, null);
                if (inseqb == null)
                {
                    throw new Common.WebException.AlertRefreshParentException("第【" + row + "】行训练地点中文名称错误!请参考训练计划-理论训练-训练地点的名称");
                }

                trainsitetid = inseqb[0].Tid;
  1. 如果是string类型的就简单的了:
memo = reader.GetCellValue(row, 5);
                memo = memo == null ? "" : memo;
                memo = memo.Replace("\r", "").Replace("\n", "").Trim();
  1. 单元格格式是日期格式的,如下:
startdate = reader.GetDateTimeCellValue(row, 3);
                startdate = startdate.ToString("yyyy-MM-dd") == "0001-01-01" ? DateTime.Parse("1900-01-01") : startdate;
  1. 最后只要插入就行了
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 摘要:这是系列教程中的第一个教程,旨在帮助您熟悉 Excel 和其内置的数据组合及分析功能的使用,让您用起来得心应...
    浮浮尘尘阅读 9,586评论 0 17
  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 175,856评论 25 709
  • 各抒己见论利弊————早恋 在一段爱情里,如果女人对男人有了仰慕,那么一切就都有了;若如男人对女人有了仰慕,那一切...
    孤独的人晚回家阅读 3,180评论 0 5
  • 成为一位成功的股票投资人,你必须做到起码得做到这三点:第一,获得炒股的基本知识;第二,制定切实可行的投资规划;...
    sixrain阅读 2,325评论 0 1
  • 每天孩子们真的是让我又惊又喜,似乎每天都是惊心动魄,中午接回儿子,我就开始做饭,儿子说门口有小朋友,要出去玩一会,...
    杨加利阅读 871评论 0 0