<表结构静态类>与<实体类>区别与应用

  <表结构静态类>与<实体类>区别与应用

<表结构静态类>与<实体类>区别与应用



开发框架支持的两种ORM模型(静态类/实体类)


ORM是指对象关系映射,开发框架将ORM定义为静态类(Static Class)或实体类(Entity Class/Object Class),静态类是指只定义表结构的字段映射(公共静态常量),这种类无任何方法或属性,只有对应字段名称定义。而实体类包含字段名称定义和对应的属性,下面是两种不同的ORM类定义:



详细说明:

http://www.csframework.com/archive/1/arc-1-20120316-1922.htm





l  生成表结构静态类


            
只是一个静态类,仅生成了字段的常量名,无任何属性和方法。

     

此类型的ORM, 在数据层的CreateSqlGenerator方法必须创建

GenerateSqlCmdByTableFields对象。


 

l  生成实体类(对象)

实体类,生成了字段的常量名和所有字段属性。可实例化为具体对象。

如:User, Customer, Order等。

 

此类型的ORM, 在数据层的CreateSqlGenerator方法必须创建

GenerateSqlCmdByObjectClass对象。



应用

1. 在界面层操作数据,基于DataTable形式的(操作DataRow,DataTable),生成表结构静态类。

2. 在界面层操作数据,基于Object实体类形式的(操作对象实体,如Person.Name,Person.Age),生成实体类。

平台中的例子是基于DataTable形式的,只有《销售员管理》是基于实体类形式。


静态类使用GenerateSqlCmdByTableFields命令生成器生成SQL
实体类使用GenerateSqlCmdByObjectClass命令生成器生成SQL, 参考:dalPerson.cs


dalPerson.cs



C# Code:


protected override IGenerateSqlCommand CreateSqlGenerator(string tableName)
{
   Type ORM = null;
   if (tableName == tb_Person.__TableName) ORM = typeof(tb_Person);
   if (ORM == null) throw new Exception(tableName "表没有ORM模型!");
   //return new GenerateSqlCmdByTableFields(ORM);
   return new GenerateSqlCmdByObjectClass(ORM); //实体类
}




C/S框架网|原创精神.创造价值.打造精品

扫一扫加微信
C/S框架网作者微信 C/S框架网|原创作品.质量保障.竭诚为您服务

版权声明:本文为开发框架文库发布内容,转载请附上原文出处连接
C/S框架网
发表评论

评论内容
昵称:
关联文章

<结构静态><实体>区别应用
CSFramework代码生成器生成三种ORM模型(静态ORM,实体ORM,标准对象)
开发框架支持的两种ORM模型(静态/实体)
控件组件的区别(Control&Component的区别)
接口和抽象区别
DbFramework数据库实体对象模型框架( 支持MsSQL,MySQL,Oracle三种数据库)
WebService, WCF, WebApi 的区别应用|C/S框架网推荐文档
DbFramework实体模型框架
CSFramework代码生成器根据数据库结构生成实体对象模型(C#代码)
C#.Net 静态构造器使用详解
StringStringBuilder的区别
软件开发设计 - CMS内容管理系统(农村两权数据库结构
软件开发设计 - EIP-企业信息门户(LiferayPoral数据库结构技术)
C#.NET 实体框架EF(Entity Framework)详解
学习版(精简版)基础版区别
系统库tb_DataSetRemoteServerIPLocalServerIP有何区别
软件开发设计 - POS-销售终端系统(ECSHOP v3.0数据库结构
Asp.Net三层体系结构应用实例(附C#源代码)
使用dalBaseDataDict提交单数据
[原创] Asp.Net三层体系结构应用实例(2)源代码