登录    注册
  

FluentData 轻量级.NET ORM持久化技术详解(C#4.5/Linq/Lambda,事务/储存过程,开源框架)

  • 赞助费:¥480元   在线客服:有事联系我哦     点击这里给我发消息    itying微信客服    交流群:it营
  • 课程讲师: 风舞烟
  • 适合人群: 初级
  • 课时数量: 19
  • 更新程度: 完成
  • 主要技术: FluentData
  • 赞助类型: 收费
  • 用到技术: FluentData
  • 涉及项目: FluentData轻量级
  • 浏览次数: 19178 次     付款后在订单列表获取下载地址

浏览历史

课程描述

相关课程

还购买过

 

 一、课程背景 

 

本课程系《基于ASP.NET MVC 4 +Knockout.JS+Web API+FluentData+EasyUI 技术实现Web通用商业开发框架》 

 

http://www.ibeifeng.com/bso.html

中的一个单品课程,北风产品总监“风舞烟”讲师主讲,购买此课程提供VIP级顾问级服务

(即课程中的相关问题工作日内可以即时得到解决)

二、讲师介绍

中国科技大学计算机专业,微软认证解决方案专家,10多年软件行业从业经验,参与过数百万的企业级ERP系统以及银行系统项目设计,在大数据处理、富客户端技术、项目管理等方面有着深刻的理解和实战经验,先后担任过国内某知名企业的CTO以及国内知名IT高端培训机构教学总监,北风网资深签约金牌讲师,主编过BF-TECH系列的 .NET、J2EE、 Android等品牌就业课程,共达2000多课时,课程总时长超10万分钟,可谓IT在线视频教育第一人,现任北风网产品研发总监,对软件系统架构、企业解决方案及IT在线教育行业有着卓越的见解和远识。

 

三、课程介绍

3.1 关于ORM

一、什么是ORM

    ORM,即Object-Relational Mapping(对象关系映射),它的作用是在关系型数据库和业务实体对象之间作一个映射,这样,我们在具体的操作业务对象的时候,就不需要再去和复杂的SQL语句打交道,只需简单的操作对象的属性和方法。 

二、使用ORM的优势 

优势一、 隐藏了数据访问细节,“封闭”的通用数据库交互,ORM的核心。他使得我们的通用数据库交互变得简单易行,并且完全不用考虑该死的SQL语句。快速开发,由此而来。 

优势二、ORM使我们构造固化数据结构变得简单易行

在ORM年表的史前时代,我们需要将我们的对象模型转化为一条一条的SQL语句,通过直连或是DB helper在关系数据库构造我们的数据库体系。而现在,基本上所有的ORM框架都提供了通过对象模型构造关系数据库结构的功能。这,相当不错。

三、使用ORM的缺点 

第一:无可避免的,自动化意味着映射和关联管理,代价是牺牲性能(早期,这是所有不喜欢ORM人的共同点)。现在的各种ORM框架都在尝试使用各种方法来减轻这块(LazyLoad,Cache),效果还是很显著的。 

第二:面向对象的查询语言(X-QL)作为一种数据库与对象之间的过渡,虽然隐藏了数据层面的业务抽象,但并不能完全的屏蔽掉数据库层的设计,并且无疑将增加学习成本. 

第三:对于复杂查询,ORM仍然力不从心。虽然可以实现,但是不值的。视图可以解决大部分calculated column,case ,group,having,order by, exists,但是查询条件(a and b and not c and (d or d))。。。。。。 

       世上没有驴是不吃草的(又想好又想巧,买个老驴不吃草),任何优势的背后都隐藏着缺点,这是不可避免的。问题在于,我们是否能容忍缺点 


3.2、几种常见的ORM框架的比较 

几种常用框架的比较 

以上就是市面上比较常见的.net ORM框架。其实比较完美的ORM框架应该是满足: 

1.对象与数据库的映射 

2.对象缓存 

3.可视化设计和代码生成工具 

4.支持多数据库 

5.动态查询 

6.延迟加载 

7.非侵入式持久化 

8.性能优良 

9.支持存储过程和事务 

10.多面向对象框架支持 

ORM框架确实很方便,但发现也有其不足之处,比如多表联合查询,对视图和存储过程的处理不理想。整体性能低于面向SQL语句。 

以上几种框架比较常用的应该是NHibernate,微软的EF及MyBatis.NET和FluentData。 

上述几个框架各有优缺点 

如:NHibernate 师出名门,大名鼎鼎的Hibernate厂商出品的专门针对.NET的ORM框架,优点是:功能强大,资料齐全,缺点是配置复杂,学习成本高 

微软的EF自然是在VS开发中首推的,优点是和VS IDE集成很好,缺点是性能较NHiberte低,据说6.0后,性能明显加强,甚至于超过NHibernate,但本人未测,另外,对其他数据库的支持需要安装第三方插件,还有个人感觉也过于宠大,使用起来,不够灵活。MyBatic.NET功能和易用性介于NHibernate与EF之间。 

相比较而言,我们更推荐使用FluentData,一个轻量级开源的.NET ORM数据持久化框架 

3.3、什么是FluentData? 

FluentData:一种使用Fluent API的新型轻量级ORM模型 

FluentData 是微型 ORM(micro-ORM)家族的一名新成员,旨在比大型 ORM(full ORM)更加易用。FluentData 于本月推出,它使用 fluent API 并支持 SQL Server、SQL Azure、Oracle 和 MYSQL。 

FluentData 的设计者 Lars-Erik Kindblad 谈到: 

 

当前市面上的 ORM 框架,如 Entity Framework 和 NHibernate,都过于复杂而且难于学习。此外,由于这些框架自身抽象的查询语言以及从数据库到 .NET 对象的映射太过麻烦,导致它们生成的 SQL 都很低效。 

FluentData 另辟蹊径,它是一个轻量级框架,拥有简单的 fluent API 并且很容易学会。 

与其他微型 ORM(如 Dapper 和 Massive)类似,FluentData 关注性能和易用性。它允许开发人员拥有对 SQL 较多的控制,而不是依赖 ORM 进行自动生成。它不仅可以使用 SQL 来执行查询、增添和更新操作,还可以支持使用存储过程和事务。根据文档描述,FluentData 可以在不改动已有结构的情况下,与任何业务对象一同工作。

 以下是 FluentData 的一些其他特性: 

· 多结果集(Multiple Result Set):在一次数据库操作下返回多个数据集; 

· 开发人员可使用强类型对象或动态对象; 

· 可为创建时需要特殊处理的复杂对象自定义实体工厂(Custom Entity Factory); 

· 具有添加其他数据库支持的能力。 

FluentData 需要 .NET 4.0,并支持 SQL Server、SQL Azure、SQL Server Compact 以及使用 .NET 驱动的 Oracle 和 MySQL。 想要了解进一步信息,如代码示例和免费下载,请访问CodePlex 站点上的 FluentData。(http://fluentdata.codeplex.com/) 

 

3.4、课程培训目标:

1. 全面了解C# 4.5 语法新特性

2.全面深入了解什么是FluentData,以及如何使用FluentData结合.NET进行数据库应用开发

3.通过实例融会贯通FluentData API语法,特性以及最佳开发实践

3.5、适合学员

1.能够熟练使用C#语法开发简单数据库应用。

2.了解SQL语句,SQL Server或MySQL,Oracle中任一种即可

3.6、课程大纲

第一部分:C# 4.5新语法特性(LinQ、Lambda表达式等)

第二部分:FluentData轻量级.NET ORM持久化技术详解

四、课程部分内容截图

IT营(itying.com)官网转载的文章、图片等资料的版权归版权所有人所有,因无法和版权所有者一一联系,如果本网站选取的文/图威胁到您的权益,请您及时和IT营站长联系。
我们会在第一时间内采取措施,避免给双方造 成不必要的损失。IT营(itying.com)官网商品均为虚拟商品,因发货后无法收回,故购买后不支持退款,请悉知。有问题可以联系客服咨询(客服上班时间:8:00-21:30)。

在线客服:点击这里给我发消息      点击这里给我发消息      有事联系我哦   

公安备案:鄂公网安备 42050202000392号  ICP备案证书号:鄂ICP备17020565号-1