SubSonic: 如何在where子句中写嵌套语句
subsonic好,subsonic妙,subsonic呱呱叫!~
啦了个啦,啦了个啦,啦了个啦……
这真是个好东西, 我基本上不用为db操什么心,
费什么劲儿.但是subsonic 2.x好像在多表
查询分页时有bug. 暂时没心情去折腾,以后
有兴趣了再说吧.
===========================
进入正题.
今天在写一个sql脚本时,需要这样一种写法:
where (a o b) and c;
当时给我一愣. 貌似以前没用subsonic写过这样子
的脚本.
翻subsonic的api,发现有一个whereexpression()
的函数. 接受参数是一个字符串. 这个玩意儿和where()
貌似无太大差别. 但是这个expression提醒了我. 我
要写得是个子表达式呀!
于是来到subsonic官网一找, 找到这样一句:
ProductCollection products = Select.AllColumnsFrom<Product>() .WhereExpression("categoryID").IsEqualTo(5).And("productid").IsGreaterThan(10) .Or("categoryID").IsEqualTo(2).AndExpression("productID").IsBetweenAnd(2, 5) .ExecuteAsCollection<ProductCollection>();
WhereExpression, AndExpression, 有戏. 看来这个
就能实现俺的需求了.
于是测试,然后正确!!~
---------------------------
---------------------------
posted on 2011-05-18 15:52 sunshaozong 阅读(878) 评论(0) 编辑 收藏 举报