NHibernate中Example类使用注意事项
1,示例:
using NHibernate.Criterion;
//初始化要查询的实体类
Refundment refundment = new Refundment { State=5};//查询
IList<Refundment> refundments = NHibernateHelper.GetCurrentSession().CreateCriteria<Refundment>()
.Add(Example.Create(refundment).ExcludeNulls().ExcludeZeroes().IgnoreCase())
.List<Refundment>();
2,使用Example类做查询条件注意事项
1>实体类的时间类型处理
- 如果Refundment 有事件类型字段CreateTime,那么在实体类中最好做如下处理:public virtual DateTime? CreateTime{ get; set; },之所以加一个“?”是为了让时间字段可以为空,不然有可能你在实例化对象时,时间字段会给默认值
- 如果不想按照上面的做法,也可以参考如下操作example.ExcludeProperty(…)过滤掉某些字段
2>Example类的方法执行顺序:Example.Create(refundment).ExcludeNulls().ExcludeZeroes().IgnoreCase(),如果不幸将ExcludeZeroes()和ExcludeNulls()这2个方法执行顺序置换了,你将得不到正确的sql和结果集,可以自己测试。
3>Example.Create(refundment)中的实体类refundment不论主键Id是否赋值了,都会屏蔽掉,当然如果用查询条件,谁会吃饱着撑着用主键查询呢?
转载于:https://www.cnblogs.com/stealyouheart/archive/2010/12/21/1912478.html
NHibernate中Example类使用注意事项相关推荐
- 什么时候应该在C ++中使用类与结构?
在哪种情况下,在C ++中使用struct比使用class更好? #1楼 它们是相同的东西,具有不同的默认值(对于class默认为private,对于struct默认为public),因此从理论上讲它 ...
- Javascript中的类实现
Javascript本身并不支持面向对象,它没有访问控制符,它没有定义类的关键字class,它没有支持继承的extend或冒号,它也没有用来支持虚函数的virtual,不过,Javascript是一门 ...
- NHibernate之旅(14):探索NHibernate中使用视图
本节内容 引入 1.持久化类 2.映射文件 3.測试 结语 引入 在数据库操作中,我们除了对表操作,还有视图.存储过程等操作,这一篇和下篇来学习这些内容.这篇我们来学习怎样在NHibernate中使用 ...
- NHibernate中的API
本篇文章介绍的是NHibernate的各种API及其作用. 下图描述了NHibernate的API在分层架构中的作用,下面将进行详细说明. NHibernate的接口大致分为四类: 1. 被应用程序 ...
- NHibernate之旅(7):初探NHibernate中的并发控制
本节内容 什么是并发控制? 悲观并发控制(Pessimistic Concurrency) 乐观并发控制(Optimistic Concurrency) NHibernate支持乐观并发控制 实例分析 ...
- python类中没有属性_如何在python语言中在类中删除属性和添加属性
在python语言中的类,可以使用class定义类,调用__init__方法进行初始化:默认传入self,可以在后面在添加几个属性.可以使用setattr()添加属性,也可以使用delattr()删除 ...
- C#中增量类功能的方式之 继承与扩展
之前一次公司培训的时候,将它记录下来,https://www.cnblogs.com/AlvinLee/p/10180536.html这个博客上面比较全面. 1.扩展方法 扩展方法是一种特殊的静态方法 ...
- spring@Autowired的对象为null,非容器中的类如何调用容器中的类
1.问题描述 我们平时使用@Autowired注入对象时,一般被注入的类都带有@Coponent.@Controller.@Service .@repository等注解才可以.注入类和被注入类都被s ...
- 一文读懂Java中File类、字节流、字符流、转换流
一文读懂Java中File类.字节流.字符流.转换流 第一章 递归:File类: 1.1:概述 java.io.File 类是文件和目录路径名的抽象表示,主要用于文件和目录的创建.查找和删除等操作. ...
- 广东省高考数学能用计算机吗,广东高考志愿填报:计算机类专业注意事项
计算机类.师范类.财经类等专业,都是广大考生和家长的最佳意向专业,那么今天,小粤就给大家带来了:广东高考志愿填报:计算机类专业注意事项.和各位一起来讨论这些热门专业中的计算机类专业,报考门槛有多高?填 ...
最新文章
- 【C语言也能干大事】第五讲 组合框控件,下拉列表
- 首批国家级一流本科专业公布,至少64所高校计算机相关专业入选,AI专业不够推荐资格...
- RuntimeError: maximum recursion depth exceeded
- sum() over() 函数的使用
- IT项目管理总结:第一章 项目管理概述
- php魔术方法例子,PHP中魔术方法的使用举例
- android之常用知识点(一)
- 360画报屏保,放大营销“感官力”
- RabbitMQ和Kafka的显著差异(1)
- 看《烈火雄心》 --当大家从火里出来,我们进去
- 赌一把:整合了30家独立报告后,我发现了2020年的五大安全趋势
- 织云Lite发布:详解包管理核心能力
- 自动化运维工具ansible简介
- 我为中国火星第一图做鱼眼矫正
- mysql事务应该多复杂_可能是全网最好的MySQL重要知识点/面试题总结
- 港澳台、内地身份证号校验规则
- Vero tempora officia nesciunt unde consequuntuIncidunt voluptatem minus earum.r.
- 让ImageView尺寸适应图片比例和屏幕
- Linux刻录光盘win10认不到,Win10无法读取DVD光驱和刻录光盘怎么办 Win10不能读取DVD光驱和刻录光盘解决方法...
- Mysql 入门学习总结
热门文章
- 小D课堂-SpringBoot 2.x微信支付在线教育网站项目实战_2-6.Mysql逆向工程效率神器之使用IDE自动生成Java实体类...
- ZT:Linux上安装JDK,最准确
- linux操作命令之压缩命令
- Applets 是什么 怎样使用 应用前景
- python socketserver并发实例
- CMD获取当前目录的绝对路径
- 技巧:linux开机自动启动脚本(转)
- Delphi创建ActiveX控件,实现安全接口及无界面代码
- 優利系統眾裡尋“她”
- Spring 定时器的使用(task)