微前端架构如何改变企业的开发模式与效率提升
596
2022-09-20
C# ORM学习笔记:使用特性+反射实现简单ORM(c罗)
一、原理与环境
在生成数据表的实体类时,利用自定义特性,给它打上表及字段的特性,然后使用反射原理,将自定义特性拼接成增、删、改、查对应的SQL,即可完成一个简单的ORM。
本示例的执行环境:
1)数据库:SQL Server。(可根据自己的需要,建立不同的数据库工厂。)
2)数据表:需使用自增类型(identity)作为数据表的主键。主键名字可以随便起,如ID。
3)实体类:实体类需提供无参构造函数。
二、演示数据表
Person表,包含主键(ID)、姓名(Name)、年龄(Age)、性别(Gender)。
二、自定义特性
定义两个自定义特性:
2.1、DataTableAttribute
此为数据表特性,包含表名(TableName)、主键(Key)。
2.2、DataFieldAttribute
此为字段特性,包含字段名(FieldName)、字段类型(FieldType)、长度(Length)、是否自增(IsIdentity)。
三、生成实体类
3.1、实体类样式
依照前面的规划,Person表需要生成下面这个样子:
3.2、使用T4模板生成实体类
3.2.1、T4Code文件夹的文本模板
DBSchema.ttinclude主要实现了数据库工厂的功能。注:请将数据库连接字符串改成您自己的。
MultiDocument.ttinclude主要实现了多文档的功能。
3.2.2、生成实体类的文本模板
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~