string

esql =

"select value c from NorthwindEntities.Customers as c order by

c.CustomerID limit 10"

;

ObjectQuery

<

Customers

> query = edm.CreateQuery<

Customers

>(esql);

Console

.WriteLine(query.GetResultType().ToString());

//

输出结果为:

//NorthWindModel.Customers

}

ToTraceString

方法:

获取当前执行的

SQL

语句。

Where

实例代码如下:

using

(

var

edm =

new

NorthwindEntities

())

{

string

esql =

"select value c from NorthwindEntities.Customers as c "

;

ObjectQuery

<

Customers

> query1 = edm.CreateQuery<

Customers

>(esql);

//

使用

ObjectParameter

的写法

query1 = query1.Where(

"it.CustomerId=@customerid"

);

query1.Parameters.Add(

new

ObjectParameter

(

"customerid"

,

"ALFKI"

));

//

也可以这样写

//ObjectQuery<Customers> query2 = edm.Customers.Where("it.CustomerID='ALFKI'");

foreach

(

var

c

in

query1)

Console

.WriteLine(c.CustomerID);

//

显示查询执行的

SQL

语句

Console

.WriteLine(query1.ToTraceString());

}

First/ FirstOrDefault

实例代码如下:

using

(

var

edm =

new

NorthwindEntities

())

{

string

esql =

"select value c from NorthwindEntities.Customers as c order by

c.CustomerID limit 10"

;

 

ObjectQuery

<

Customers

> query = edm.CreateQuery<

Customers

>(esql);

Customers

c1 = query.First();

Customers

c2 = query.FirstOrDefault();

Console

.WriteLine(c1.CustomerID);

Assert

.IsNotNull(c2);

Console

.WriteLine(c2.CustomerID);

}

Distinct

实例代码如下:

using

(

var

edm =

new

NorthwindEntities

())

{

string

esql =

"select value c.City from NorthwindEntities.Customers as c order by

c.CustomerID limit 10"

;

ObjectQuery

<

string

> query = edm.CreateQuery<

string

>(esql);

query = query.Distinct();

foreach

(

string

c

in

query)

{

Console

.WriteLine(

"City {0}"

, c);

}

}

Except:

返回两个查询的差集。实例代码如下:

using

(

var

edm =

new

NorthwindEntities

())

{

string

esql1 =

"select value c from NorthwindEntities.Customers as c order by

c.CustomerID limit 10"

;

ObjectQuery

<

Customers

> query1 = edm.CreateQuery<

Customers

>(esql1);

string

esql2 =

"select value c from NorthwindEntities.Customers as c where

c.Country='UK' order by c.CustomerID limit 10"

;

ObjectQuery

<

Customers

> query2 = edm.CreateQuery<

Customers

>(esql2);

query1 = query1.Except(query2);

EF ObjectQuery查询及方法的更多相关文章

  1. ObjectQuery查询及方法

    ObjectQuery 类支持对 实体数据模型 (EDM) 执行 LINQ to Entities 和 Entity SQL 查询.ObjectQuery 还实现了一组查询生成器方法,这些方法可用于按 ...

  2. EF – 3.EF数据查询基础(下)数据关联

    5.5.1 <关于“数据关联”,你不一定清楚的事> 这讲视频比较全面地介绍了“一对一”.“一对多”和“多对多”三种数据关联类型在关系数据库和Entity Framework数据模型中的实现 ...

  3. EF联合查询的新用法

    用EF很多年了,做联合查询时,只知道linq和lambda两种语法,今天朋友发了一个链接,打开看后发现是EF内置的新的关于联合查询的方法,赶紧抄录下来,以备后用. 现在先把这几种方法,各写一个例子,便 ...

  4. Entity Framework 学习初级篇5--ObjectQuery查询及方法

    ObjectQuery 类支持对 实体数据模型 (EDM) 执行 LINQ to Entities 和 Entity SQL 查询.ObjectQuery 还实现了一组查询生成器方法,这些方法可用于按 ...

  5. 讨论过后而引发对EF 6.x和EF Core查询缓存的思考

    前言 最近将RabbitMQ正式封装引入到.NET Core 2.0项目当中,之前从未接触过是个高大上的东东跟着老大学习中,其中收获不少,本打算再看看RabbitMQ有时间写写,回来后和何镇汐大哥探讨 ...

  6. 匿名类型 使用泛型T linq返回dynamic类型的匿名实体 如何把匿名类型.GetType()返回的对象传进泛型里面 EF实体查询出的数据List<T>转DataTable出现【DataSet 不支持 System.Nullable<>】的问题

    [100分]紧急求助:LinQ下使用IQueryable<T>如何将返回类型<T>使用匿名类型 问题描述如下:我有一个方法如下:public IQueryable Dissen ...

  7. ASP.NET Core 使用 EF 框架查询数据 - ASP.NET Core 基础教程 - 简单教程,简单编程

    原文:ASP.NET Core 使用 EF 框架查询数据 - ASP.NET Core 基础教程 - 简单教程,简单编程 ASP.NET Core 使用 EF 框架查询数据 上一章节我们学习了如何设置 ...

  8. SQO (标准查询运算符)方法 & Linq To Object

    #region SQO (标准查询运算符) 方法 #region Where() Find() FindAll() FirstOrDefault()等方法 static void c01where() ...

  9. Oracle 特殊字符模糊查询的方法

    最近在写DAO层的时候,遇到一个问题,就是使用like进行模糊查询时,输入下划线,无法精确查到数据,而是返回所有的数据. 这让我很好奇,百度之后才发现,原来是因为有些特殊字符需要进行转义才可以进行查询 ...

随机推荐

  1. JavaScript学习系列4 ----- JavaScript中的扩展运算符 三个点(...)

    在JavaScript中, ES6开始有rest参数 和 三个点扩展运算符 (spread运算符) 我们来看看他们各自的用处 1. rest参数 rest参数的形式为 ...变量名          ...

  2. 3. XML实体注入漏洞的利用与学习

    XML实体注入漏洞的利用与学习 前言 XXE Injection即XML External Entity Injection,也就是XML外部实体注入攻击.漏洞是在对非安全的外部实体数据进行处理时引发 ...

  3. 同台电脑 多Git账号同时使用

    前言 有次周末忘记带公司电脑回来,恰好遇到有个问题需要修复,又不想跑公司一趟,于是研究了下如何在自己电脑上同时使用两个 git 账号 正文 1. 首先就和第一次安装 git 时一样,使用 sha算法 ...

  4. C# 写 LeetCode Medium #2 Add Two Numbers

    2. Add Two Numbers You are given two non-empty linked lists representing two non-negative integers. ...

  5. python的virtualenv环境与使用

    1.安装virtualenv 在安装virtualenv之前,我们需要安装至少有一个版本的Python:因为virtualenv是python的一个第三方模块,必须基于python环境才能安装: 如果 ...

  6. ICP备案接入商

    1. 什么是ICP备案中的接入商 ICP备案系统中所说的接入商:是指为您提供虚拟主机.服务器托管或者专线接入的公司. 现在ICP备案的原则是“谁接入谁负责”,接入商一般都有自己的电子平台和工信部对接, ...

  7. DNS 网关 路由 交换机 网桥 协议 服务器 这些都是什么关系?

    来源:知乎 服务器:为你提供服务的机器.相当于马路边上的各种店面.虽然理论上任何一户人家都能开店为你提供服务,但是因为各种硬件资源限制而不适合开店.比如:小区道路比较窄(宽带带宽比较窄).家里地方太小 ...

  8. [APIO2019T1]奇怪装置

    考古学家发现古代文明留下了一种奇怪的装置.该装置包含两个屏幕,分别显示两个整数x和y.经过研究,科学家对该装置得出了一个结论:该装置是一个特殊的时钟,它从过去的某个时间点开始测量经过的时刻数t,但该装 ...

  9. vue2中使用ajax

    vue中本身没有ajax功能,需要使用扩展,现在推荐使用的是axios,github地址如下 https://github.com/axios/axios 下面各个示例 <!DOCTYPE ht ...

  10. python绘制世界人口地图

    最近看了<python编程:从入门到实践>,里边设计的项目拿来学习学习,绘制世界人口地图. 首先,下载数据,http://data.okfn.org/ ,从这里下载population_d ...