一步一步教你使用AgileEAS.NET基础类库进行应用开发-基础篇-演示ORM的基本操作-阿里云开发者社区

开发者社区> agilelab> 正文

一步一步教你使用AgileEAS.NET基础类库进行应用开发-基础篇-演示ORM的基本操作

简介: 系统回顾           前面的四篇文章我详细的介绍了AgileEAS.NET平台中统一数据访问(UDA)组件的用法,分析了两种数据处理流程的优缺点,以及基于懒惰模式的委托执行,事务处理方法,基本涵盖了基于数据库支持的业务系统的技术点。
+关注继续查看
系统回顾

          前面的四篇文章我详细的介绍了AgileEAS.NET平台中统一数据访问(UDA)组件的用法,分析了两种数据处理流程的优缺点,以及基于懒惰模式的委托执行,事务处理方法,基本涵盖了基于数据库支持的业务系统的技术点。

          从本文开始,我将带大家进入AgileEAS.NET平台的ORM组件应用案例之中,应用ORM实现与前面案例相同的功能,有关于AgileEAS.NET平台ORM组件的介绍请参考:AgileEAS.NET之数据关系映射ORMAgileEAS.NET之ORM访问器

开发流程

image

          一、AgileEAS. NET平台ORM应用开发的第一步是数据对象的设计,就是规划所涉及的ORM对象的定义,涉及的数据库,是否使用基于接口驱动的数据层等一系列的策略,在AgileEAS.NET平台中提供了数据对象设计器,本步骤的实质工作是使用对象设计器进行数据实体的定义:

[QJ]%$($V4ZNO)X71ZO_[S9

          二、生成代码,本步骤是使用对象设计器生成当前设计好的模型的数据层代码,生成或者根据现在的对象模型定义文件生成相信的数据层代码:

J2X`0N[2N$WTCA5IR{40~11

          三、处理ORM访问器,AgileEAS.NET平台中的ORM是实现与操作相分离的,在程序中要使用ORM实体操纵数据库,就必须的配置好ORM访问器,使用ORM访问器.操作(实体)或者实体.ORM访问器/实体.操作()实现ORM操作。

          四、ORM操作,在配置好ORM访问器之后,就可以使用ORM访问器.操作(实体)或者实体.ORM访问器+实体.操作()的方法来完成ORM及数据库的操纵。

本文案例

          本文的Demo代码数据库结构基于一步一步教你使用AgileEAS.NET基础类库进行应用开发-基础篇-涉及的数据定义一文中的定义,在本案例中也就省去了设计实体对象模型的步骤,我们直接使用前文提供的demo.sdm文件生成代码,并且确定不生成数据接口层代码:

ZY)`2QJCMV4Q@R1O7WEP`ZJ

          本案例完成的业务功能是实现读取商品字典的所有数据,并且实例演示增加、读取、修、删除一个新的商品字典记录,项目结构如下:

TE69$5{V8NN4YS6_F6`QH}2

          演示解决方案中ClassLibDemo.DAL.SQLServer是生成器生成的项目,ClassLib.OrmDemo是一个控件台项目,流程控制代码如下:

static void Main(string[] args)
    {
        System.Console.WriteLine("AgileEAS.NET平台ORM组件使用例子,按任意键开始...");
        System.Console.Read();
        System.Console.WriteLine("读取全表数据的例子:");
        new TableDemo().DemoQuery();

        System.Console.WriteLine("按任意键继续...");
        System.Console.Read();
        System.Console.WriteLine("演示数据查询(Query)的例子:");
        new DataObjectDemo().DemoQuery();

        System.Console.WriteLine("按任意键继续...");
        System.Console.Read();
        System.Console.WriteLine("演示数据插入(Insert)的例子:");
        new DataObjectDemo().DemoInsert();
        new DataObjectDemo().DemoQuery();

        System.Console.WriteLine("按任意键继续...");
        System.Console.Read();
        System.Console.WriteLine("演示数据修改(Update)的例子:");
        new DataObjectDemo().DemoUpdate();
        new DataObjectDemo().DemoQuery();

        System.Console.WriteLine("按任意键继续...");
        System.Console.Read();
        System.Console.WriteLine("演示数据删除(Delete)的例子:");
        new DataObjectDemo().DemoDelete();
        new DataObjectDemo().DemoQuery();

        System.Console.WriteLine("按任意键结束。");
        System.Console.Read();
    }
               程序的运行结果如下:

image

          有关本例子所涉及的数据表结构请参考基于AgileEAS.NET平台基础类库进行应用开发-总体说明及数据定义一文,有关数据对象模型定义文件、文档、DDL脚本请下载:http://files.cnblogs.com/eastjade/demo.db.doc.sql.rar,本文代码下载:ORM.Demo1.rar

 

链接

一步一步教你使用AgileEAS.NET基础类库进行应用开发-系列目录

AgileEAS.NET平台开发指南-系列目录

AgileEAS.NET应用开发平台介绍-文章索引

AgileEAS.NET平台应用开发教程-案例计划

AgileEAS.NET官方网站

敏捷软件工程实验室

QQ群:116773358

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
微软称Google Android可以使用.NET,徐汇区网站设计
最近Oracle起诉Google使用Java侵权的事件炒得沸沸扬扬,但微软开源技术中心总监Tom Hanraha说,微软不会禁止Google Android使用.NET 技术。Hanraha说:“像Oracle因Java而起诉Google这样的事情,微软是不会做的。
805 0
django的orm中F对象的使用
今天不巧就用上了。 就是将数据库的字段,自增1的场景。 from django.db.models import F DeployPool.objects.filter(name=deployversion_id).
1147 0
Asp.net MVC 使用Autofac的简单使用 IOC
Ioc(Inversion of Control)或者叫依赖注入DI(Dependency Injection) 如果一个接口有两个实现类,但是在实现过程中,用到了这两个具体的实现类。 如果采用IOC,则只能是注册一个接口类型,那么如何确保IOC在合适的时候传入不同类的实例?这是我突然间想到的一个问题,希望园友们可以帮忙解答一下!     所谓IOC(控制反转)或者说是依赖注入,就是将你设计好的类交给系统去控制,而不是在你的类内部控制,控制权发生了变化,就称为控制反转。
913 0
+关注
agilelab
魏琼东,系统分析师、系统架构师、高级项目经理。有17年开发和管理经验,擅长企业软件过程改进、系统分析与架构设计、.NET平台架构技术、SQL Server/ORACLE数据库技术、分布式架构体系及高性能并行计算,尤其对中小软件企业的企业级软件研发管理体系有着深入的研究与应用。
116
文章
0
问答
文章排行榜
最热
最新
相关电子书
更多
《2021云上架构与运维峰会演讲合集》
立即下载
《零基础CSS入门教程》
立即下载
《零基础HTML入门教程》
立即下载