码迷,mamicode.com
首页 > 其他好文 > 详细

二维Excel自动化解析类库简介

时间:2016-08-06 14:11:13      阅读:216      评论:0      收藏:0      [点我收藏+]

标签:

此类库尚在构思中,接下来会找时间实现它~

简介:

此Excel是将简单的二维Excel解析成一个C# List实体,防止开发人员重复造轮子。开发人员可以通过一系列特性标签,来定义Excel表格的数据规范,并做一些简单的Check,比如长度、大小、不可为空等。

构思支持的Excel格式如下:

Name Age Tel Address IsAdmin
Jax 18 15399126333 西安 true
Bob 52 15821487157 榆林 false

 最终通过本类库,可以解析为一个List<Person>,并且把Excel中的每个值都正确的填充到对象:

public class Person
{
    public string Name { get; set; }
    public int Age { get; set; }
    public string Tel { get; set; }
    public string Address { get; set; }
    public bool IsAdmin { get; set; }
}

 

实现:

1.通过在对象属性上的特性标签来指定该属性对应的表格表头的名称,或者所在列的序号,最终来定位这个属性会由哪个单元格的值来填充它。

2.通过在属性上的特性标签,来定义验证规则,类似于Required,MaxLength、MinLength、MaxValue、AvailableValues,这些特性标签最好是用Sytem类库下面的(咱们平时viewModel上写的那些),如果没法用,就自己定义。

3.先支持int、string、decimal、datetime、double、Bool、Enum这几种类型,并且支持这些类型的可空类型(int?,decimal?)

4.支持根据表头文本来验证用户使用的Excel模板是否正确

可以参考:https://github.com/chsword/Excel2Object/tree/master/Chsword.Excel2Object

这个已经实现了基本的功能,但是我们要在他的基础上,扩展出来一些常用的方法,比如数据合法性验证、模板正确性判断等。

二维Excel自动化解析类库简介

标签:

原文地址:http://www.cnblogs.com/baiyunchen/p/5743787.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!