LINQ to Entity里面不能使用DateTime】的更多相关文章

LINQ中不能直接使用DateTime,否则会报错:‘The specified type member 'Date' is not supported in LINQ to Entities. Only initializers, entity members, and entity navigation properties are support’ 需要把DateTime定义在LINQ之外,例如: var now = DateTime.Now.Date; var query = from…
回到目录 眾所周知,在linq to entity的查询语句中,不允许出现ef不能识别的关键字,如Trim,Substring,TotalDays等.net里的关键字,在EF查询里都是不被支持的,它的原因可能是为了更好的提高查询的性能吧,毕竟,好的性能取决于你的程序标准,有了一个严格的标准,才能设计出好的程序来. 今天主要说一下,EF为日期方法留的一个后门,<后门>这个词大家在中国社会都应该知道了,顾名思义,就是反着原则走,你的原则对我没有用,哈哈!这东西有时候是有用的,因为在大的原则下,很可…
http://www.cnblogs.com/ASPNET2008/archive/2012/10/27/2742434.html 最近一年的项目,我主要负责一些小型项目(就是指企业内部的小项目),在数据库操作方面我们采用了以开发速度快为特点的Linq to Entity,这里我不多讲它的使用方法,先来分享下我认为还不错的几个地方:        1:某种情况下可以完全代替传统SQL开发      这里是指比较简单的数据库处理,比如查询,几个表关联查询及添加数据,更新数据,删除数据等,不包含特别…
回到目录 对于从linq to sql迁移过来的开发者,对随机排序不会感到陌生,直接为datacontext添加一个方法再配合反射就可以实现随机排序了,代码如下: /// <summary> /// 数据上下文扩展 /// </summary> public partial class dbDataContext : IUnitOfWork { /// <summary> /// 随机排序时使用这个函数 /// </summary> /// <retu…
Linq to Entity中连接两个数据库时要注意的问题 今天大学同学问了我一个问题,Linq to Entity中连接两个数据库时,报错“指定的 LINQ 表达式包含对与不同上下文关联的查询的引用.” 研究下却是发现这个问题,下面是我做的测试: class Program     {         static void Main(string[] args)         {             using(UserDBEntities context=new UserDBEnti…
技术背景:框架MVC,linq to Entity 需要一定的lambda书写能力 问题:在简单的orm中完成一些简单的增删查改是通过where insert delete update 完成的,但是在这个过程中出现了一个需求:多项条件的and 和or 的组合查询 众所周知直接通过linq 写的话很方便,但是我们的框架使用了linq to entity,如果只用lambda来写比较复杂的and 和or 查询就比较麻烦了. 一:简单and 和or 查询 public void TextFoZK()…
技术背景:框架MVC,linq to Entity 需要一定的lambda书写能力 问题:在简单的orm中完成一些简单的增删查改是通过where insert delete update 完成的,但是在这个过程中出现了一个需求:多项条件的and 和or 的组合查询 众所周知直接通过linq 写的话很方便,但是我们的框架使用了linq to entity,如果只用lambda来写比较复杂的and 和or 查询就比较麻烦了. 一:简单and 和or 查询 public void TextFoZK()…
之前一直用sql选择出数据放在一个集合中,然后再用Linq或者lambda去操作数据,今天学了Linq to entity 才知道原来linq产生是为了Entity.也就是EDM(实体数据模型) 关于EDM,个人觉得这篇博文写的不错:http://www.cnblogs.com/wyqlijin/archive/2011/02/25/1964934.html 这位仁兄的系列文章将的比较详细,高深! 我们创建完ADO.Net Data Entity之后就可以再vs中直接操作数据表和字段了 下面是第…
前言 在使用 Linq to Entity 的時候,會把之前 Linq to SQL 的想法就帶進去,寫好之後編譯也都不會出錯,但是實際上在跑的時候就會出現錯誤訊息了,這點真的要注意了.這次我遇到問題的時候就是時間相減的時候發生 的,希望本篇對於遇到問題的朋友有點幫助囉! 說明 先看看測試資料表的結構 接下來建立一個 Entity ,這部份就不多加解釋怎麼建 Entity 了. 現在我想查出結束時間和起始時間差距一天以上的資料,很自然的寫出下面的程式碼: C# var data = db.Tes…
最近工作中遇到数据库组合查询带来的一些问题,因此有必要调研一下Linq to Objects Join Linq to Entity.参考一些网友的代码案例,深入实践了一下使用EntityFramework Code First 下的组合查询. 准备环节: (一) 在VS下创建一个控制台应用程序(LinqToObjectJoinEntity),定义一个MyObject类,如下: public class MyObject { public int Identity { get; set; } p…
public class CustomDataContext<TEntity> : System.Data.Linq.DataContext where TEntity : class,new() { public CustomDataContext() : base(ConfigurationManager.AppSettings["TestDbConnectionString"]) { } #region 创建一个新对象 public bool Create(TEnti…
错误提示: 解决方式:换成了 linq to sql方式…
from emp in EmployeeInfo let years = EntityFunctions.DiffYears(emp.Birthday.Value,DateTime.Now) let birthdayThisYear = EntityFunctions.AddYears(emp.Birthday.Value,years) select new { Age = birthdayThisYear > DateTime.Now ? years - : years }…
数据库建了一个唯一索引,使用linq to ef更新的时候,老是报,索引建冲突,,坑了我一上午,最后把索引删了…
1.在工作中碰到这样一个问题: 使用linq时,需要查询两个表,在这两张表中关联字段分别是int,和varchar()也就是string,在linq中对这两个字段进行关联, 如果强制类型转换两个不同类型的字段,就会报响应的扩展方法无法自动推断参数类型的问题(比如:我用的是groupjoin扩展方法), 如果进行了常规的类型转换,比如将int字段对应的转换为string(ToString方法),这时编译的时候不会有问题了. 但是在运行的时候会报如下错误: LINQ to Entities 不识别方…
在开始了解LINQ to Entities之前,需要先对.NET Framework 3.5版本后对C#语言的几个扩展特性做一些阐释,这有助于我们更容易.更深刻的理解LINQ to Entities技术的原理与实现. 一.隐式实例化局部变量 .NET Framework 3.5后,实例化局部变量语法有了新的选择:使用“var”关键字隐式类型化: var user = new User(); 隐式类型化语法与Javascript语言里声明变量的语法类似,它可以一定程度上简化实例化局部变量的语法.但…
技术介绍: LINQ(Language Integrated Query,语言集成查询)是一组用于C#和VB.NET语言的扩展,它允许编写C#或者VB.net代码,以与查询数据库相同的方式操作内存数据.LINQ提供了丰富的类似SQL的查询语法,功能强大且容易上手.下图汇总展示了LINQ技术的官方实现集合: 正如上图所示,LINQ to Entities 是LINQ技术在实体对象模型中的一种实现,它与LINQ to SQL以及LINQ to DataSets一起构成了LINQ to ADO.Net…
左连右连还是内连这个其实你不需要关心.只需要根据实体的映射关系写查询,框架会自动帮你生成的. 至于linq查询语法与扩展方法的效率,应该是一样的,比如: var users=(from u in db.Users where u.UserRoleId==1 select u) .ToList();  var users2=db.Users.Where(u=>u.UserRoleId==1).ToList(); 这两句查询实际上是等效的. inner join:  var =from x in d…
根据某属性去重 使用第三方库: https://github.com/morelinq/MoreLINQ Install-Package morelinq -Version 3.0.0 data.DistinctBy(x=>x.Id) 实现left join 使用DefaultIfEmpty(),是left join 没有DefaultIfEmpty(),是inner join var query2 = ( from users in Repo.T_Benutzer from mappings…
CreationTime是DateTime类型 group by 年/月/日/小时 group by 年 (from d in YourData.OrderBy(x => x.CreationTime) group d by new { time = new { d.CreationTime.Year } } into g select new { AverageValue = g.Average(p => p.Value), CreationTimeStr = g.Key.time.Year…
一.聚合函数查询 ; using (xxxEntities db = new xxxEntities()) { sum = db.userinfo.AsNoTracking().Where(d => d.id==id).Sum(m => (double?)m.money).GetValueOrDefault(); } return sum; 二.删除操作 ; ) { using (gghdbEntities db = new gghdbEntities()) { var data = db.q…
当使用 from m in _db.students从数据库中获取数据时,数据库中的数据类型和C#中的不同,所以可能会出错!先作_db.students.ToList()然后select…
IEnumerable<InspecReportsContextEntity> OnenewDate = lisConAll.Where(p => p.inspectime == timer1.Text);/ int countNum = OnenewDate.ToList<InspecReportsContextEntity>().Count;//获取list集合总数…
1.读取用户和部门两个表的左连接: var sg = db.Users.GroupJoin(db.Departments, u => u.DepartmentId, d => d.DepartmentId, (u,d) => new { u, d }).Select(o=>o).ToList(); 注意:上面将返回所用用户信息和对应的部门信息(即用户部门ID信息缺少,那么用户列表也会显示) 2.读取指定返回列表字段的左连接信息: var GJoinList = db.Sys_Use…
这两天一直想写一个动态查询的方式,先是晚上查询了一下,发现大家写的差不多都是一样的[如:http://www.cnblogs.com/ASPNET2008/archive/2012/10/28/2743053.html#commentform和http://www.cnblogs.com/lyj/archive/2008/03/25/1122157.html],我觉得这里不好的地方就是在查询的时候还是要知道查询的是哪一个列,然后根据这个查询的列是否为空等等的一些判断来进行动态查询的拼接, 这样一…
分页: 多表关联查询: 多表操作 临时表: 存储过程式长语句 : Hibernate与iBATIS的比较 博客分类: db iBATISHibernateSQL数据结构ORM  1.出身 hibernate 是当前最流行的o/r mapping框架,它出身于sf.net,现在已经成为jboss的一部分了. ibatis 是另外一种优秀的o/r mapping框架,目前属于apache的一个子项目了. 2.原理 相对hibernate“o/r”而言,ibatis是一种“sql mapping”的o…
转载原出处:http://blog.csdn.net/litao2/article/details/8629335 在“模型浏览器”中,右击 .edmx 文件,然后选择“从数据库更新模型”. 模型更新向导启动.如果未指定任何数据库连接,则会显示“选择数据库连接”对话框.否则,将会显示“选择数据库对象”对话框. 如果显示“选择数据库连接”对话框,请指定一个数据库连接.否则,转至下一步骤. 有关指定连接的详细信息,请参见“选择您的数据连接”对话框(实体数据模型向导).指定连接之后,请单击“下一步”以…
//构造Lambda语句        private static Expression<Func<TElement, bool>> BuildWhereInExpression<TElement, TValue>(Expression<Func<TElement, TValue>> propertySelector, IEnumerable<TValue> values)         {             Paramet…
字段1 降序 字段2 降序 var str = db.xxx.OrderByDescending(p=>p.字段1).ThenByDescending(p=>p.字段2) ThenBy - 在 OrderBy 或 OrderByDescending 的基础上再正序排序ThenByDescending - 在 OrderBy 或 OrderByDescending 的基础上再倒序排序…
http://msdn.microsoft.com/en-us/library/cc161164.aspx http://stackoverflow.com/questions/2443836/what-is-the-difference-between-linq-to-entities-linq-to-sql-and-linq-to-da http://social.msdn.microsoft.com/Forums/en-US/ad257e81-fc5c-4286-a899-9f071356…