2009年12月25日

Asp.Net大型项目实践(4)-用NHibernate保存和查询我们的业务领域对象之多表关联查询(附源码)

摘要:   NHibernate的多表关联查询做的还是很不错的,除了比较BT的报表查询,一般业务所需的多表查询基本都能满足,且效率也还算不错,NHibernate多表查询在数据库访问层上其实比较简单。反而难点在于如何把查询出来的多层对象不转换成DTO,直接传输到UI进行绑定,本篇会简单说明一下,到后面讲展现层的时候会详细描述(注:关于DTO的使用和利弊这里不多加讨论,在本系统中的设计原则是尽量避免使用DTO)。 依然还是接之前字典维护的例子,我们需要在字典项目的表格里显示一列“类别”即字典项目所属字典类别的名称,这个字段在字典项的表是不存在的,需要关联查询字典类别表才能得出。如下图(由于存在项目客户实际数据,所以我图改了一些...) 阅读全文

posted @ 2009-12-25 19:51 传说中的弦哥 阅读(9592) 评论(7) 推荐(3) 编辑

Asp.Net大型项目实践(4)-用NHibernate保存和查询我们的业务领域对象之多条件组合查询(附源码)

摘要: 上篇介绍了在系统表格查询中的分页和排序,而在实际业务中客户往往需要灵活的多条件组合查询,如果比较没技巧的针对每个表格写不同的组合查询代码和界面无疑工作量是比较大的,在此我们使用EXT的GridFilters插件结合后台的NHibernate争取用一种统一简便的方法去实现,如下图: ... 大家可以看到支持多种数据类型,还有一些其他数据类型如日期型,bool型 因界面关系就不贴出来了,这样客户通过表格的列头几乎可以满足所有的组合查询需求,同样在本篇我们只实现数据访问层,UI层的实现以后讲解。 阅读全文

posted @ 2009-12-25 17:02 传说中的弦哥 阅读(8805) 评论(9) 推荐(3) 编辑

Asp.Net大型项目实践(4)-用NHibernate保存和查询我们的业务领域对象之分页与排序(附源码)

摘要: 接上篇,在本篇中我们将实现下图中的分页和排序功能,UI层的实现以后我们会讲到,本篇只实现数据访问层... 阅读全文

posted @ 2009-12-25 17:01 传说中的弦哥 阅读(10201) 评论(10) 推荐(1) 编辑

Asp.Net大型项目实践(4)-用NHibernate保存和查询我们的业务领域对象之实现基本的数据库访问(附源码)

摘要: 接上篇,完成NHibernate的Session管理和初始化之后,现在可以完成我们的数据库访问基类RepositoryNhbImpl了 RepositoryNhbImpl数据库访问基类代码: 阅读全文

posted @ 2009-12-25 11:57 传说中的弦哥 阅读(11010) 评论(11) 推荐(3) 编辑

Asp.Net大型项目实践(4)-用NHibernate保存和查询我们的业务领域对象之NHibernate的Session管理与初始化(附源码)

摘要: NHibernate的Session和Asp.Net的Session是两码事,大家不要混淆了。NHibernate的Session是拿来干啥的?对用用过Linq2Sql的同学,可以把它理解成DataContext。要被持久化的对象都要放在Session里托管。Session同时也是一个缓存,比如在一定范围内你通过NHibernate ,Get了一个User ,当你再次Get同样的这个User的时候NHibernate就不会去操作数据库,而会直接从Session缓存中取出第一次获得的User。 阅读全文

posted @ 2009-12-25 09:55 传说中的弦哥 阅读(13461) 评论(10) 推荐(4) 编辑

导航