Linq- ExcuteQuery用法
DataContext.ExecuteQuery<TResult> 方法 (String, Object[])
语法:
public IEnumerable<TResult> ExecuteQuery<TResult>(
string query,
params Object[] parameters
)
类型参数:
- TResult:返回的集合中的元素的类型。
参数:
- query
- 类型:System.String
要执行的 SQL 查询。
- parameters
- 类型:System.Object[]
要传递给命令的参数数组。 注意下面的行为:
如果数组中的对象的数目小于命令字符串中已标识的最大数,则会引发异常。
如果数组包含未在命令字符串中引用的对象,则不会引发异常。
如果某参数为 null,则该参数会转换为 DBNull.Value。
返回值
类型:System.Collections.Generic.IEnumerable<TResult>
由查询返回的对象的集合。
当 LINQ to SQL 不足以应对特定方案时,此方法可用作一种传递机制。
使查询结果中的列与对象中的字段和属性相匹配的算法如下所示:
如果字段或属性映射到特定列名称,则结果集中应包含该列名称。
如果未映射字段或属性,则结果集中应包含其名称与该字段或属性相同的列。
通过先查找区分大小写的匹配来执行比较。 如果未找到匹配项,则会继续搜索不区分大小写的匹配项。
如果同时满足下列所有条件,则该查询应当返回(除延迟加载的对象外的)对象的所有跟踪的字段和属性:
如果 <T> 是由 DataContext 显式跟踪的实体。
ObjectTrackingEnabled 为 true。
实体具有主键。
否则会引发异常。
在所有其他情况下,查询只能检索对象的已跟踪字段和属性的子集。
下面的 C# 代码段显示此方法的一个用途:
var customers = db.ExecuteQuery<Customer>(@"SELECT CustomerID, CompanyName, ContactName, ContactTitle,
Address, City, Region, PostalCode, Country, Phone, Fax
FROM dbo.Customers
WHERE City = {0}", "London"); foreach (Customer c in customers)
Console.WriteLine(c.ContactName);
Linq- ExcuteQuery用法的更多相关文章
- 常用LINQ关键字用法汇总
背景 传统上,针对数据的查询都以简单的字符串表示,而没有编译时类型检查或 IntelliSense 支持.此外,还需要针对每种数据源学习一种不同的查询语言:SQL 数据库.XML 文档.各种 Web ...
- 走入asp.net mvc不归路:[6]linq常见用法
asp.net mvc结合linq,先不说性能问题,对于增删查改的操作还是相当方便的.以下我们就来介绍一下linq在asp.net mvc的Controller中的常见用法. 1 首先来看看整个数据表 ...
- LINQ 简单用法【1】
LINQ:Language INtegrated Query,语言集成查询. 以下内容演示如何利用LINQ进行增加,修改,删除和查询操作,针对数据库. 首先创建Linq Class. 添加数据库信息, ...
- linq一般用法
最一般的用法 var rows = from c in dataTrue.AsEnumerable() from t in dataPre.AsEnumerable() ].ToString().St ...
- LINQ 常见用法
以下数据源都假设为data 1.获取某列的不重复数据 List<int> ids = data.Select(t => t.ID).Distinct().ToList(); 2.对 ...
- Linq基本用法
- LINQ的用法
http://www.cnblogs.com/liulun/archive/2013/02/26/2909985.html(转载)
- linq join用法
单条件: var query = from person in people join pet in pets on person equals pet.Owner select new { Owne ...
- 2017年12月13日 LinQ用法基本的增删改查
LinQ是什么? LinQ是语言集成的查询,是用于C#跟Vb的扩展语言 LinQ的用法 新建一个App_Code文件夹,在文件夹下添加一个数据LinQ to SQL类,可以直接直接点击服务器管理器然后 ...
- linq lambda let
1.linq let用法 var query = from x in db.Users let theage = x.age let sexstring = x.sex ? "男" ...
随机推荐
- VMware设置虚拟机,并配置远程连接桌面
现在需要使用VMware虚拟出几个window7的机器,用来跑自动化测试. 在配置虚拟机的时候遇到了几个问题: 问题1:虚拟机无法与外界机器通信.(可ping通过). 问题2:外界机器无法链接虚拟机的 ...
- Exists与In效率分析
A: In:是把外表和内表做Hash 连接,而exists 是对外表作loop 循环,每次loop循环再对内表进行查询. 当查询两个表的大小相当时,用In 和 exists差别不大. 如果两个表中一个 ...
- AudioMixer的脚本控制
AudioMixer是Unity5新特性之一,能很好的实现立体声效果. 这儿先记录一下脚本控制的方法: 1.添加一个Group,然后点击它 2.右侧面板上出现2个参数:pitch(速度)和volume ...
- linux vi快捷键大全
h或^h 向左移一个字符 j或^j或^n 向下移一行 k或^p 向上移一行 l或空格 向右移一个字符 G 移到文件的最后一行 nG 移到文件的第n行 w 移到下一个字的开头 W 移到下一个字的开头,忽 ...
- [转]Angular, Backbone, or Ember: Which is Best for your Build?
In order to choose which framework is right for your build, we've asked four important questions of ...
- Linux IIO子系统分析
最近稍微看了下LKML,发现里面有一个子系统叫做“IIO”.以前没有接触过,所以Google了下. IIO子系统全称是 Industrial I/O subsystem(工业 I/O 子系统) ...
- noip 2015 提高组
算是填个坑吧 , QwQ Day 1 第一题很水,就是考代码能力 ,直接贴代码. #include <iostream> #include <cstdlib> #include ...
- try与finally返回结果执行先后详解
先看一段代码: @Test public void test1(){ System.out.println(testf1()); } int testf1() { int x = 1; try { r ...
- jetty-如何配置虚拟主机【转】
jetty-如何配置虚拟主机[转]http://weifly.iteye.com/blog/1152688 官方配置:http://wiki.eclipse.org/Jetty/Howto/Confi ...
- java转c#代码工具集合
1#:Java语言转换器助手地址:http://www.microsoft.com/en-us/download/details.aspx?id=14349 2#:Octopus的.NET转换器地址: ...