C# 使用ExcelReader 上传excel

C# 使用ExcelReader 上传excel


using (var reader = ExcelReaderFactory.CreateReader(stream))
            {
                if (reader.ResultsCount > 50)
                {
                    TempData["error"] = "The maximum row while uploading is 50";
                    return RedirectToAction("UploadResult");
                }
                else
                {
                    var list = new List<Sample>();
                    var service = new YourService();
                    do
                    {
                        while (reader.Read())
                        {
                             by pass column name row
                            if (isReadingColumn)
                            {
                                continue;
                            }


                            var obj = service.GetObjFromReader(reader);
                            list.Add(obj);
                        }
                    } while (reader.NextResult());
		}
	   }


     public Sample GetObjFromReader(IExcelDataReader reader)
        {
            // those are the columns specified in excel template
            // ************* must follow the sequence **************
	    // Field1
	    // Field2
	    // DateField
	    // ...
            try
            {
                var obj = new Sample();
                obj.Field1 = reader.GetString(0);
                obj.Field2 = reader.GetString(1);
		var dtStr = FromExcelDate(reader.GetDouble(2));
                obj.DOB = dtStr;
              ...
                return obj;
            }
            catch (Exception ex)
            {
		...
            }
        }
        private static DateTime FromExcelDate(double value)
        {
            return new DateTime(1899, 12, 30).AddDays(value);
        }


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值