随笔分类 - ORM开发系列
对象关系映射(ORM)提供了概念性的、易于理解的模型化数据的方法。http://baike.baidu.com/view/197951.htm
摘要:一、摘要 在上篇我们已经讲了远程访问对象,现在我们来看看他的内部是怎么实现的,本次远程对象访问用Socket实现。二、本文大纲 a、摘要。 b、本文大纲。 c、回顾。 d、Socket设计。 e、其他。三、回顾1:在上篇LiteORM学习六:远程对象中我们说到在实体类上加入DataEntity就可以在网络中访问了,那具体是有什么技术呢,有那几种实现方式.WebSerivce,wcf,socket,Remoting 。2:在上篇LiteORM学习六:远程对象中我们只说到了如何使用远程对象。四、Socket设计 在OHA中使用了SOCKET技术进行远程访问业务对象的方法。1:在上篇中我们说到在实体
阅读全文
摘要:一、摘要 实现实体类具有远程访问的能力。二、本文大纲 a、摘要。 b、本文大纲。 c、给实体类赋予远程能力。 d、实体类远程对象设计。 e、其他。三、给实体类赋予远程能力 我们先来看一下可以远程访问的实体类 大家都知道现在网络编程都是用Remoting,WCF 。那如何在这些技术上使用这个实体类呢 ?四、实体类远程对象设计 设计思想:要想兼容WCF Remoting Socket 就需要规范一个统一的接口,接口设计如下: 根据不同技术来实现对应的接口,DataEntity 对外使用。五、其他想实现的效果,如下: 想实现一个像Csla一样的数据门户,不知道我上面的思路对不对,希望博客园的高手们.
阅读全文
摘要:开发这个实体类验证是为了,减少验证代码这方面的工作量。1:生成实体类,默认会判断是否为空的字段。2:在生成的实体类中配置要验证的属性。3:在UI层使用,先判断验证是否通过在进行添加修改工作。总共有三类来完成验证工作,如下:AttributeHandle.cs 类View CodeValidateAttribute.cs 类View CodeValidateType.cs 类View Code调用:stringcheckMessage=AttributeHandle.GetValidateResult(this);if(!string.IsNullOrEmpty(checkMessage))th
阅读全文
摘要:
LiteORM学习四:设计工具
现在网上已经有好多ORM和工具了,我主要是想整合出一个适合我自己开发的一套工具。
工具分为5步,
1:设置数据库连接,
2:设置相关参数,
3:设置输出路径,
4:选择要生成的代码,
5:把生成的代码拷自己的项目里。
思路线路图:生成工具+ORM+控件+敏捷开发。 现在只出了RadControls模板。
阅读全文

摘要:本节,直接写通过代码来学习。这些基本操作都比较简单 增加:方法1:使用AddToXXX(xxx)方法:实例代码如下: using (var edm = new NorthwindEntities()) { Customers c = new Customers { CustomerID = "c#", City = "成都市", Address = "中国四川省", CompanyName = "cnblogs", Country = "中国", Fax = "10086",
阅读全文
摘要:LmgORM项目 实体类转换器
主要包含以下转换 :
使用DbDataReader填充对象.
使用DataSet填充对象.
dataset转实体类
将实体类转换成DataTable
转换IList为List
List转换为ArrayList
阅读全文
摘要:LmgOrm介绍 目 录 第一章:前言... 3 第二章:系统层次划分... 3 第三章:LmgOrm数据库访问层... 3 第四章:LmgOrm ORM.. 4 一:LmgOrm O/R Mapping 起步... 4 二:LmgOrm O/R Mapping映射方法说明... 4 三:LmgOrm O/R Mapping对继承的支持... 4 四:LmgOrm O/R Mapping操作核心... 5 五:LmgOrm O/R Mapping 事务处理... 5 六:LmgOrm O/R Mapping 对象查询... 5 七:LmgOrm O/R Mapping 配置文件... 5 第一
阅读全文
摘要:首先、园子里面之前的很多同仁已经讨论过了ORM相关的框架及其优点和缺点。虽然我本篇讨论的有点晚,但是其毕竟优点大于缺点,本文只是简单的介绍我讨 论ORM的目的,及为什么要讨论这个已经被大家讨论的成熟的不能再成熟的东西。 我们先来看看ORM的优缺点:ORM中的核心模块:实体对象与数据库表的关系ORM思想给我提供了如下的方便:当然ORM框架也不是万能的,有优点的必然存在这一定的缺点,我们来看看ORM的不足: 首先我们来看看数据库访问的通用组件模型:下面我们来说说对象关系映射的实现。 下面我们来分析下这二种方式的利弊: 以上大概描述了各自的有点,下面再阐述下各自的缺点。
阅读全文
摘要:LiteORM学习一:数据库设计liteORM 提供了provider 接口。以下是SQL server 的接口这样就方便整合到其他项目中去了,如 OpenExpressApp项目就是用这个ORM随便说一下 UML建模 自动生成代码和数据库在加一个模板 这个是不是就是软件模型驱动开发呢? public class DbFactory { public static readonly DbFactory Instance = new DbFactory(); private SqlProvider provider; private DbFactory() { string connectStr
阅读全文
摘要:LiteORM学习三:查询设计查询更有趣的部分是查询接口。这是非常简陋,但很有效。有一个工厂方法,查询()返回一个IQuery对象。这个对象可以帮助我们定义了SELECT语句的WHERE子句。注意,当我们到一个限制值列,我们不使用列的名称。记住,ColumnAttribute别名属性?这是它派上用场。我们指定列的别名,这将是解决实际的列名。这样做的好处是我们可以改变,而不需要修改任何查询的数据库列的名称。一个例子应该能够更容易理解。语法是非常简陋,但也很相似,实际的SQL语句,所以它应该是相当简单的把握。using lite;static void Main(string[] args){ I
阅读全文
摘要:LiteORM项目地址:http://www.codeproject.com/KB/database/lite.aspxListORM 怎么设计Entity呢?listorm 是利用微软自带的Attribute 来实现数据库与实体类的映射过程。lmgorm是利用xml来实现数据库与实体类的映射过程。这个会在LmgORM系列会有详细的介绍的。表using lite;// maps to table dbo.person[Table]public class Person// maps to table dbo.users[Table(Name="users")]public
阅读全文
摘要:反射以及Attribute在ORM中的应用一、 反射什么是反射?简单点吧,反射就是在运行时动态获取对象信息的方法,比如运行时知道对象有哪些属性,方法,委托等等等等。反射有什么用呢?反射不但让你在运行是获取对象的信息,还提供运行时动态调用对象方法以及动态设置、获取属性等的能力。反射在ORM中有什么用呢?我这里所讨论的ORM实现是通过自定义Attribute的方式进行映射规则的描述的。但是我们并不知道具体哪个对象需要对应哪个表,并且这些对象是独立于我们的ORM框架的,所以我们只能通过自定义Attribute来定义映射规则,然后通过反射来动态获取这些映射规则。反射的实现:下面我们就以简单的获取对象的
阅读全文
摘要:ORM(O/R Mappping对象关系映射)的基础概念 在我们的系统中,存在大量的需要进行持久化存储的对象,这些对象可能是各种各样的业务单据,也可能是我们的系统配置信息等。另外一些属于内存中使用而不需要进行持久化存储的对象,不属于我们的讨论范围。而在支持对象序列化的语言比如C#,Java中,我们可以将这些对象序列化到磁盘文件或者直接保存到关系数据库中。其中关系数据库是我们最主要也是最安全的选择。 在对数据库中的业务数据进行各种操作的时候我们发现,我们进行的大量的Insert、Update、Delete操作,除了其SQL语句根据不同的对象有不同的变换之外,其主要流程存在很多相似之处。于是人们就
阅读全文