对象/关系数据库映射(object/relational mapping,ORM)这个术语表示一种技术,用来把对象模型表示的对象映射到基于SQL的关系模型数据结构中去。
在今日的企业环境中,把面向对象的软件和关系数据库一起使用可能是相当麻烦和浪费时间的,ORM
不仅仅管理.NET类到数据库表的映射(包括.NET 数据类型到SQL数据类型的映射),还提供数据查询和获取数据的方法,可以大幅度减少开发时人工使用SQL和ADO.NET处理数据的时间。
现在有很多成熟的开源框架支持ORM,如:NHibernate,PDO....等 但是他们内部是怎么实现的, 通过一个非常简单的实例让我们一起来探索其中最为关键的过程. (适合ORM初学者)我们以Sql Server 为例
定义操作类型枚举, 为增强可读性 将枚举名使用中文,在实际应用中不建议使用中文作为枚举名称。
标记实体映射基类
自定义属性类,DataObjectAttribute 用于标记映射实体所对应的数据表 FieldObjectAttribute用于标记字段所代表的特殊属性
需要的对数据库表和字段的简单表示我们都有了,下一步来实现对Sql Server 数据表的,Select ,Update,Insert 等操作,ORM映射实现类。
实现就这么简单了,让我们测试其使用过程。
第一步:定义数据映射实体
第二步:配置连接字符串
<appSettings>
<add key ="ORMConnect" value ="Data Source=???.??.??.???,1433;Initial Catalog=?????;Persist Security Info=True;User ID=?????;Password=??????"/>
</appSettings >
第三步:测试对数据表的操作
DataAccess.DataAccess ormAccess= new DataAccess.DataAccess();
UserInfo info = new UserInfo();
info.UserName = "TestUser" ;
info.UserDec = http://www.apace.com.cn;
info.UserEMail = G_Jack@126.com;
info.UserTel = "9988996";
info.RegIpAddres = “testip”;
//测试新增
ormAccess.AddOnlyObject(info);
//测试更新
ormAccess.UpdateOnlyObject(info)
//测试删除
ormAccess.DelOnlyObject(info)
对ORM的简单实现就到处结束了,希望能帮到大家