Entity SQL rules for Wrapped and Unwrapped Results
Here are some rules to remember for Entity SQL queries:
1.Use SELECT VALUE when projecting more than one type;
2.When querying with SELECT,the ObjectQuery type must be a DbDataRecord ;
3.You can use SELECT VALUE when projecting a single value or entity;
4.When querying with SELECT VALUE,the ObjectQuery type must be the same type as the value being returned.
用 Entity SQL 查询“包装”和“未包装” 结果的规则:
下面是几条用Entity SQL 查询需要记住的规则:
1、当投射的类型超过一个时,用 select value ;
2、当用 select 查询时,ObjectQuery 结果集类型必须为DbDataRecord类型;
3、当查询单个值或单个实体的时候,推荐使用 select value 查询;
4、当用 select value 进行查询时,ObjectQuery 类型必须和返回值类型保持一致;
Examples:
1、Wrapped Contact needs to be cast:
private static void WrappedContactInEntitySql()
{
using (var context = new PEF())
{
var queryString =
"select c from PEF.Contacts as c where c.FirstName ='Robert' "; var contacts = context.CreateQuery<DbDataRecord>(queryString); foreach (DbDataRecord c in contacts)
{
var contact = (Contact)c[0]; Console.WriteLine("{0} {1} {2}",
contact.Title.Trim(),
contact.FirstName.Trim(),
contact.LastName.Trim());
} } Console.WriteLine("Press Enter...");
Console.ReadLine(); }
2、Unwrapped Contact does not need to be cast:
private static void UnwrappedContactInEntitySql()
{
using (var context = new PEF())
{
var queryString =
"select value c from PEF.Contacts as c where c.FirstName = 'Robert' "; var contacts = new ObjectQuery<Contact>(queryString, context); foreach (var contact in contacts)
{
Console.WriteLine("{0} {1} {2}",
contact.Title.Trim(),
contact.FirstName.Trim(),
contact.LastName.Trim());
} } Console.WriteLine("Press Enter...");
Console.ReadLine(); }
Entity SQL rules for Wrapped and Unwrapped Results的更多相关文章
- 《Entity Framework 6 Recipes》中文翻译系列 (13) -----第三章 查询之使用Entity SQL
翻译的初衷以及为什么选择<Entity Framework 6 Recipes>来学习,请看本系列开篇 3-4使用实体SQL查询模型 问题 你想通过执行Entity SQL语句来查询你的实 ...
- Entity SQL 初入
Entity SQL 是 ADO.NET 实体框架 提供的 SQL 类语言,用于支持 实体数据模型 (EDM).Entity SQL 可用于对象查询和使用 EntityClient 提供程序执行的查询 ...
- 了解entity framework其他query方式之Entity SQL,Raw Sql分析
一:linq 对ef来说不是唯一性的query... 二:Entity Sql 1. esql => entity sql... [类sql的语言] 和sql差不多,但是呢,不是sql... u ...
- Entity Framework --Entity SQL注意事项
Entity SQL 是 ADO.NET 实体框架 提供的 SQL 类语言,用于支持 实体数据模型 (EDM).Entity SQL 可用于对象查询和使用 EntityClient 提供程序执行的查询 ...
- EF中Entity SQL用法
public List<policecase> GetPoliceCaseList(PoliceCaseFilter view) { string sq ...
- Programming Entity Framework 翻译(1)-目录
1. Introducing the ADO.NET Entity Framework ado.net entity framework 介绍 1 The Entity Relationship Mo ...
- Entity Framework关于SQL注入安全问题
1.EF生成的sql语句,用 parameter 进行传值,所以不会有sql注入问题 2.EF下有涉及外部输入参数传值的,禁止使用EF直接执行sql命令方式,使用实体 SQL 参考: https: ...
- Entity Framework 学习初级篇4--Entity SQL
Entity SQL 是 ADO.NET 实体框架 提供的 SQL 类语言,用于支持 实体数据模型 (EDM).Entity SQL 可用于对象查询和使用 EntityClient 提供程序执行的查询 ...
- Save results to different files when executing multi SQL statements in DB Query Analyzer 7.01
1 About DB Query Analyzer DB Query Analyzer is presented by Master Genfeng,Ma from Chinese Mainl ...
随机推荐
- Commons IO 2.5-IOUtils
转自:http://blog.csdn.net/zhaoyanjun6/article/details/55051917 福利另外我已经把Commons IO 2.5的源码发布到Jcenter,大家就 ...
- 2-6 ES6常用语法
- Java多线程(四)isAlive
isAlive 活动状态:线程处于正在运行或准备开始运行的状态 public class ISLiveDemo extends Thread { public void run() { System. ...
- fread/fwrite实现复制功能
1. fread/fwrite实现复制功能 #include <stdio.h> #include <stdlib.h> #define BUFFSIZE 4096 //执行 ...
- ACM_错排(递推dp)
RPG的错排 Time Limit: 2000/1000ms (Java/Others) Problem Description: 今年暑假GOJ集训队第一次组成女生队,其中有一队叫RPG,但做为集训 ...
- Javascript对象基础讲解
1.Object对象详解 javascript 里最基本的数据类型是对象. avaScript里的对象其实是一个无序的属性集合,属性又是一个个的名-值对. 除了字符串,数字,true,false,nu ...
- [译]libcurl错误码
CURLcode Almost all "easy" interface functions return a CURLcode error code. No matter wha ...
- JOptionPane.showMessageDialog出现在浏览器下面的解决方法
将JOptionPane.showMessageDialog(null, result, "发布公告:", JOptionPane.INFORMATION_MESSAGE);中的参 ...
- 前端--3、jQuery
介绍 jQuery是一个Javascript框架.其宗旨是——WRITE LESS,DO MORE! 是轻量级的js库,兼容CSS3和各种浏览器. 作用:处理HTMLdocuments.events. ...
- npm——nrm
nrm 是镜像地址,方便国内下载 npm i nrm -g nrm ls nrm use taobao // 切换地址