前言:

前面两篇都是大体介绍流程,有一些配置细节,没有细说,这里用一篇补上。

1、Excel配置项

起始行索引、列头跨行数:

对于自定义的Excel导入模板(有时候模板是由客户提供,模板的规则很乱)

比如模板里前面是一些说明,中间是列头,下面还带有数据和说明格式。

通过配置起始行索引,以及列头跨行数(0或1都代表一行),则可以解决此类问题。

条件方式:

此选项,是针对映射字段里:勾选了多个“唯一键”,的情况。

有些时候,需要满足 A and B 为组合条件:A字段+B字段 才组成唯一。

有些时候,可能需要 A or B为组合条件:A字段 或 B字段 单独都是唯一。

导入方式:

仅插入:只处理插入。

仅更新:只处理更新。

插入或更新:存在则更新、不存在则插入。

所有方式,都是:根据唯一键勾选的条件做为检测条件。

2、字段映射配置

Excel列名:

系统自动读取的Excel模板,按规则把Excel模板的列头名字读取出来。

表名+表字段名:

系统会自动读取数据库的字段描述和列表的表头配置规则,自动匹配出对应的表名+字段名。

对于系统无法自动识别或匹配错误的,则需手工调整。

对于多个表之间的关系,则手机添加补齐外键字段(外键列名可以随便取)

必填:

指定字段是否需要必填。

唯一:

做为检测插入或更新的条件。

可以勾选多个,默认是and组合,(在Excel导入配置那里,可以指定是and还是or组合)。

外键+外键对应的表名:

当涉及多个表时,总有关联字段,因此,需要添加关联字段,这里统一叫外键

添加好外键,必然需要指定该外键关联到哪个表(系统会自动识别表的主键,并进行关联)

PS:如果表之间的关联,不是通过主键关联,而是通过某个Key关联,则在格式化字段中指定的表的字段。

3、字段映射格式化:

和配置表头的配置规则一样,可以配置一些格式化(系统也会自动识别并自动读取过来)

规则一:#号配置(和导入配置规则格式化一样)

#是否

配置后,Excel数据填写的是下拉选择是与否,导入数据会格式化成1或0进数据库。

规则二:@号配置

以下几个为系统的固定替换值:

@UserID : 当前的用户ID。

@UserName :当前的用户名。

@FullName :当前的真实姓名。

其它自定义:

@XXX : 系统会自动从post过的参数里(通过Reques["xxx"])寻找同名的替换。

规则三:.号配置

可以指定取某个字段的值:配置规则为:表名.字段名(表名可以省略)

.FullName

示例:用户导入时,用户的姓名对应:FullName,但数据库还有一个字段叫RealName,即则一个值需要存两份。

则:添加一个RealName字段,并把格式化配置成 .FullName

规则四:默认值

系统固定的默认值:

now() :代表当前时间。

newid() :一个随机guid值。

其它:

9527 :写什么就值值。

总结:

配置是核心,理解了基本可以处理大部分情况,而无需写代码。

如果真的要写,请看下一篇。

ASP.NET Aries 高级开发教程:Excel导入配置之规则说明(下)的更多相关文章

  1. ASP.NET Aries 高级开发教程:Excel导入之代码编写(番外篇)

    前言: 以许框架提供的导入配置功能,已经能解决95%以上的导入情况,但有些情况总归还是得代码来解决. 本篇介绍与导入相关的代码. 1.前端追加导入时Post的参数: var grid = new AR ...

  2. ASP.NET Aries 高级开发教程:Excel导入之多表高级导入配置(中)

    前言: 在面对Excel的各种复杂导入情况中,多表导入是很常见的情景. 今天就来写一下多表导入是如何配置的. 1.自定义导入模板 怎么自定义: 其实就是自己新建一个Excel了,把列头都写好. 不过有 ...

  3. ASP.NET Aries 高级开发教程:Excel导入之单表配置(上)

    前言: 随着ASP.NET Aries的普及,刚好也有点闲空,赶紧把Excel导入功能的教程补上. Excel导入功能,分为四篇:单表配置(上).多表高级配置(中).配置规则(下).代码编写(番外篇) ...

  4. ASP.NET Aries 高级开发教程:主题样式及多语言(标签化控制)

    前言: 最新ASP.NET Aries升级到V5.2.0以上之后,之前的样式和多语言机制,有了重大的升级机制,这篇就简单介绍一下. 1.控制开关 在配置维护那里,新增了两个控制项: 2.如何添加主题 ...

  5. ASP.NET Aries 入门开发教程2:配置出一个简单的列表页面

    前言: 朋友们都期待我稳定地工作,但创业公司若要躺下,也非意念可控. 若人生注定了风雨飘摇,那就雨中前行了. 最机开始看聊新的工作机会,欢迎推荐,创业公司也可! 同时,趁着自由时间,抓紧把这系列教程给 ...

  6. ASP.NET Aries 高级开发教程:如何写WebAPI接口

    前提: 最近,有不少同学又问到,Aries里如何提供WebAPI接口? 针对这个问题,今天给顺路写个教程,其实呢,很简单的. 方式一:直接用WebService提供接口. 用这种方式,直接添加接口就可 ...

  7. ASP.NET Aries 高级开发教程:使用存储过程(番外篇)

    前言: 发现这个问题,有不少人提起过,所以就简单写成文章吧. 接下来看如何在Aries 框架中使用存储过程,整体步骤和绑定普通视图差不多. 步骤一:新建一个空视图. 可以在SqlCode管理中,创建一 ...

  8. ASP.NET Aries 高级开发教程:表单检测字段是否已存(番外篇)

    前言: 昨天刚好有人问了这个问题,因此就针对这个问题,补上一篇吧. 正文: 如图:在用户编辑列表中,用户名是会自动检测是否已存在的. 具体对应的Html内容如下: <label><e ...

  9. ASP.NET Aries 高级开发教程:行内编辑事件怎么新增数据到后台(番外篇)

    前提: 今天又网友又提出了一个问题,说行内编辑保存之前,怎么新增一些数据提交到后台? 对方说看了源码,也没找到怎么处理,这里就写文给解答一下. 解答: 于是我看了一眼源码,只能说你没找到地方: 第12 ...

随机推荐

  1. golang项目中使用条件编译

    golang项目中使用条件编译 C语言中的条件编译 golang中没有类似C语言中条件编译的写法,比如在C代码中可以使用如下语法做一些条件编译,结合宏定义来使用可以实现诸如按需编译release和de ...

  2. JavaScript的数据类型问题总结

    一    JS中有哪些数据类型? -- 共 6 种数据类型,其中 5 种基本数据类型Undefined,Null,Boolean,Number和 String,1 种复杂数据类型Object.因为EC ...

  3. 对象和XML文件的转换

    很多时候,我们开发程序都需要使用到对象的XML序列化和反序列化,对象的XML序列化和反序列化,既可以使用XML对象(XmlDocument)进行操作,也可以使用XmlSerializer进行操作,两个 ...

  4. kv.go

    package clientv3 import (     pb "github.com/coreos/etcd/etcdserver/etcdserverpb" //protob ...

  5. java.lang.IllegalArgumentException异常 数据库别名问题

    java.lang.IllegalArgumentException: org.hibernate.hql.internal.ast.QuerySyntaxException: Path expect ...

  6. bzoj 4008 亚瑟王 期望概率dp

    对于这种看起来就比较傻逼麻烦的题,最关键的就是想怎么巧妙的设置状态数组,使转移尽可能的简洁. 一开始我想的是f[i][j]表示到第j轮第i张牌还没有被选的概率,后来发现转移起来特别坑爹,还会有重的或漏 ...

  7. Git详解及github与gitlab使用

    第一章 关于版本控制 第二章 GIT简介 第三章 GIT安装 第四章 初次运行GIT前配置 第五章 初始化仓库 第六章 GIT命令操作 第七章 GIT分支结构

  8. 什么?云数据库也能C位出道?

    欢迎大家前往腾讯云+社区,获取更多腾讯海量技术实践干货哦~ 是的,你没有看错.腾讯智造,新一代云数据库CynosDB,"C"位出道了! CynosDB是腾讯云自研的新一代高性能高可 ...

  9. bootstrap小知识

    栅格系统 1. row必须放到container和container-fluid里面 2. 你的内容应当放置于"列(column)"内,并且,只有"列(column)&q ...

  10. SPPNET

    SPPNet Spatial Pyramid Pooling in Deep Convolutional Networks for Visual Recognition 文章地址:https://ar ...