NHibernate Criteria中的And, Or
作者:优天网络 日期:2013-05-10 阅读量:1900 次
分享到:
public IList<BoxDao> QueryRelated(TemplateDao[] templates, DataSourceDao[] datasources)
{
ICriteria criteria = this._session.CreateCriteria(typeof(BoxDao));
Expression.ICriterion exp = null;
exp = Expression.Or(Expression.In("Template", templates), Expression.In("Wrapper", templates));
exp = Expression.Or(exp, Expression.In("DataSource", datasources));
exp = Expression.And(exp, Expression.In("State", new EnumState[] { EnumState.Publish, EnumState.Edit }));
criteria.Add(exp);
return criteria.List<BoxDao>();
}
{
ICriteria criteria = this._session.CreateCriteria(typeof(BoxDao));
Expression.ICriterion exp = null;
exp = Expression.Or(Expression.In("Template", templates), Expression.In("Wrapper", templates));
exp = Expression.Or(exp, Expression.In("DataSource", datasources));
exp = Expression.And(exp, Expression.In("State", new EnumState[] { EnumState.Publish, EnumState.Edit }));
criteria.Add(exp);
return criteria.List<BoxDao>();
}
如果参数templates、datasources都不为null,执行的SQL如下
SELECT ...
FROM CMS_BOX this_
WHERE ((this_.TEMP_ID in (?p0) or this_.WRAPPER_ID in (?p1)) or this_.DS_ID in<
FROM CMS_BOX this_
WHERE ((this_.TEMP_ID in (?p0) or this_.WRAPPER_ID in (?p1)) or this_.DS_ID in<
免责声明:本文章部分图片素材和内容素材来源于网络,仅供学习与参考,如果损害了您的权利,请联系网站客服,我们核实后会立即删除。
-
前端开发中最常见的12个HTML标签错误
开发者在写HTML代码的时候一定要仔细,并熟练掌握HTML规则,因为一不留神则可能出现一些微小的错误,但有可能会导致严重的后果。本文列举了一些在HTML中常见的错误,并且给出了如何避免错误的方法。相信这些方法会对前端开发者有一些帮助。
2012-05-30 阅读量:1211次
-
JS获取当前网址,JS获取当前域名URL ,JS获取网站完整路径页面地址
JS获取当前网址,JS获取当前域名URL ,JS获取网站完整路径页面地址thisURL = document.URL;thisHREF = document.location.href;thisSLoc = self.location.href;thisDLoc = document.location;
2013-05-10 阅读量:1851次