上一节中,我们已经介绍了,使用CriteriaOperator表达式,获取对象数据。

CriteriaOperator criteria = CriteriaOperator.Parse("[UserID]='" + obj.UserID + "'");
Users objnew = session.FindObject<Users>(criteria);

如果查询结果是多条数,我们可以使用XPCollection来接收:

XPCollection<Users> coll = new XPCollection<Users>(session);
CriteriaOperator criteria = CriteriaOperator.Parse("");
SortProperty sortProperty = new SortProperty("FirstName", SortingDirection.Ascending);
SortingCollection s = new SortingCollection(sortProperty);
coll.Session = session;
coll.Criteria = criteria;
coll.Sorting = s;

我们修改一下上节的例子,修改后的代码如下:

using System;
using System.Collections.Generic;
using System.Configuration;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using DevExpress.Data.Filtering;
using DevExpress.Xpo;
using DevExpress.Xpo.DB;
using XPOModel.DemoDB;
namespace DevConsole
{
class Program
{
static void Main(string[] args)
{
string provider = ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString;//获取数据库连接
IDataLayer datalayer = new SimpleDataLayer(XpoDefault.GetConnectionProvider(provider, AutoCreateOption.DatabaseAndSchema));//建立数据层XPO独有的
DevExpress.Xpo.Session session = new DevExpress.Xpo.Session(datalayer); //将数据层和会话绑定 for (int i = 0; i < 10; i++)
{
Users obj = new Users(session);
obj.FirstName = "Dave_" + i.ToString();
obj.LastName = "Annable";
obj.EmailID = "Admin@gmail.com";
obj.Save();
} XPCollection<Users> coll = new XPCollection<Users>(session);
CriteriaOperator criteria = CriteriaOperator.Parse("");
SortProperty sortProperty = new SortProperty("FirstName", SortingDirection.Ascending);
SortingCollection s = new SortingCollection(sortProperty);
coll.Session = session;
coll.Criteria = criteria;
coll.Sorting = s; for (int j = 0; j < coll.Count; j++)
{
Users obj = coll[j];
Console.WriteLine(string.Format("ID:{0},FirstName:{1},LastName:{2}", obj.UserID, obj.FirstName, obj.LastName));
}
Console.ReadLine();
}
}
}

运行程序后,控制台显示如下:

图一 执行查询结果

CriteriaOperator还可以应用于XpoDataSource(后续将提到如何使用)。

前台添加XpoDataSource控件如下:

<dx:XpoDataSource ID="XpoDataSource1" runat="server" ServerMode="True" TypeName="XPOModel.DemoDB.Users"></dx:XpoDataSource>

后台代码指标查询过滤条件如下:

XpoDataSource1.Session = session;
XpoDataSource1.Criteria = "UserID='122008'";

展现效果如下:

图二 XpoDataSource执行过滤查询后结果

下一节,我们将通过一个完整示例,介绍如何使用DevExpress控件,通过非常少的代码实现CRUD操作...

博文作者:挪威森林(Coding of life)

博文出处:http://www.cnblogs.com/allenlf/

主要研究:Web开发框架、ORM框架、WCF框架、医疗行业软件开发(HRP、EMR、CP、OA)

版权归挪威森林博客园所有,转载请注明出处,谢谢合作

最新文章

  1. Spark入门实战系列--7.Spark Streaming(上)--实时流计算Spark Streaming原理介绍
  2. 天朝git的使用
  3. -[UIWindow viewForFirstBaselineLayout]: unrecognized selector sent to instance
  4. RCP:如何把Preferences中的项从一个类别移动到另一个类别
  5. dubbo配置文件xml校验报错
  6. java/.net-常用工具下载地址&amp;常用学习网址&amp;快捷键
  7. 标准sql语句,学习
  8. java 21 - 9 复制图片的4种方式
  9. wikioi 1430 素数判定
  10. 【BZOJ】【3207】花神的嘲讽计划 I
  11. 安卓WebView中接口隐患与手机挂马利用(远程命令执行)
  12. ubuntu1204上不能正常用emacs配合gocode进行自动补全
  13. SQL LEFT JOIN 关键字
  14. leetcode@ [62/63] Unique Paths II
  15. Popen No such file or directory 错误
  16. 无法连接 mysql
  17. python 之路,Day11(上) - python mysql and ORM
  18. tomcat虚拟主机虚拟目录配置
  19. python编辑器pydev安装
  20. sql server 索引阐述系列一索引概述

热门文章

  1. Web颜色搭配 - 收集
  2. ngrok原理浅析(转载)
  3. Oracle SQL CPU占用高
  4. U盘中的闪存白片与黑片
  5. Toolkit 一键激活Office 2010方法及Office 2010 Toolkit工具下载
  6. DAL – RDBMS 的分区
  7. hdoj 5319 Painter(模拟题)
  8. log4net日志的配置及简单应用
  9. c 转置字符串You are a so cheap man -&gt;man cheap so a are You
  10. BootStrap 智能表单系列 八 表单配置json详解