linq 动态查询字段的问题。

问题描述

代码目的是将select中的字段参数化。privateIEnumerable<dynamic>QueryUser(Func<UserDB,dynamic>selector){using(varuser=newUserContext()){varquery=fromuinuser.UserDBsselectselector(u);returnquery.ToList();}}privatedynamicSelectUserField(UserDBu){returnnew{u.UserName,u.UserDBID};}//调用IEnumerable<dynamic>queryUsers=QueryUser(u=>SelectUserField(u));运行结果被抛出异常"TheLINQexpressionnodetype'Invoke'isnotsupportedinLINQtoEntities."请教高手这是为什么,谢谢。

解决方案

解决方案二:
表达式节点类型不支持linqtoentities-》你这是linqtosql的写法。。
解决方案三:
varquery=fromuinuser.UserDBs.AsEnumerable()selectselector(u);

时间: 2024-09-11 01:30:08

linq 动态查询字段的问题。的相关文章

LINQ 动态查询(多条件)

问题描述 小弟,没有接触过linq,现在项目需要一个linq查询,还有点复杂.求大神指教.现有一个List<Marker>list数据源,Marker有(id,type[type1,type2,type3....],status[status1,status2,status3.....]三个属性),根据List<string>typeList和List<string>statusList进行过滤(两个list可能只有一个,可能都存在,所以需要动态查询).例如typeLi

继LINQ动态组合查询PredicateExtensions讲解

        在LINQ动态组合查询中我留下了一个问题就是PredicateExtensions.在这里很简单不需要什么多的基础只要比会And.Or逻辑运算数学知识就够了. 先贴上代码好分析:   代码 public static class PredicateExtensions     {         public static Expression<Func<T, bool>> True<T>() { return f => true; }      

net-linq怎么查询字段区间?

问题描述 linq怎么查询字段区间? 大家好,请教linq查询字段区间的方法,字符串不支持使用>=等操作,初学,谢谢 解决方案 可以用模糊查询来实现 解决方案二: LINQ查询XML字段

艾伟_转载:打造优雅的Linq To SQL动态查询

首先我们来看看日常比较典型的一种查询Form 这个场景很简单:就是根据客户名.订单日期.负责人来作筛选条件,然后找出符合要求的订单. 在那遥远的时代,可能避免不了要写这样的简单接口: public interface IOrderService{ IList<Order> Search(string customer, DateTime dateFrom, DateTime dateTo, int employeeID);} 具体爱怎么实现就怎么实现啦,存储过程,ORM框架.这里假定是用了孩童

LINQ to SQL语句(23)之动态查询

动态查询 有这样一个场景:应用程序可能会提供一个用户界面,用 户可以使用该用户界面指定一个或多个谓词来筛选数据.这种情况在编译时不知 道查询的细节,动态查询将十分有用. 在LINQ中,Lambda表达式是许多 标准查询运算符的基础,编译器创建lambda表达式以捕获基础查询方法(例如 Where.Select.Order By.Take While 以及其他方法)中定义的计算.表达式 目录树用于针对数据源的结构化查询,这些数据源实现IQueryable<T>. 例如,LINQ to SQL 提

LINQ体验(17)——LINQ to SQL语句之动态查询

高级特性 本文介绍LINQ的高级特性,其包括大家都关心的动态查询的用法 ,另外简单提下ID标识这个知识. 动态查询 有这样一个场景:应用程 序可能会提供一个用户界面,用户可以使用该用户界面指定一个或多个谓词来筛 选数据.这种情况在编译时不知道查询的细节,动态查询将十分有用. 在LINQ中,Lambda表达式是许多标准查询运算符的基础,编译器创建lambda表达 式以捕获基础查询方法(例如 Where.Select.Order By.Take While 以及其 他方法)中定义的计算.表达式目录树

Linq to Sql:N层应用中的查询(下): 根据条件进行动态查询

如果允许在UI层直接访问Linq to Sql的DataContext,可以省去很多问题,譬如在处理多表join的时 候,我们使用var来定义L2S查询,让编译器自动推断变量的具体类型 (IQueryable<匿名类型>), 并提供友好的智能提示:而且可以充分应用L2S的延迟加载特性,来进行动态查询.但如果我们希望将业 务逻辑放在一个独立的层中(譬如封装在远程的WCF应用中),又希望在逻辑层应用Linq to sql,则情况 就比较复杂了:由于我们只能使用var(IQueryable<匿

Linq To Sql进阶系列(七)动态查询续及CLR与SQL在某些细节上的差别

在上面一篇文章Linq To Sql进阶系列(六)中,我们提到了使用object的动态查询.本文在上文的 基础上,再做更加深入的引申.同时修正上文中一些不妥的地方. 1, object的动态查询续 首先要做的事情,就是将Find的函数改成扩展方法.扩展方法只能放在静态类里,而且它的第一个参 数必须带this关键字.在上文中,作者留下了一个迷题.当需要or条件时,又该如何做呢?本文也将这 个问题给出回答.但是对于动态Like的条件,笔者依然还没有找到一个较好的方法.为了增加or条件, 函数的声明也

Linq To Sql进阶系列(六)用object的动态查询与保存log篇

动态的生成sql语句,根据不同的条件构造不同的where字句,是拼接sql 字符串的好处.而Linq的推 出,是为了弥补编程中的 Data != Object 的问题.我们又该如何实现用object的动态查询呢? 1,用object的查询是什么? 我们可以简单的举这么一个例子.我们到公安局查找一个人.首先,我们会给出他的一些特征,比如 ,身高多少,年龄多少,性别,民族等.那么,我们把这个人的一些特征输入电脑.我们希望,电脑能 给我们返回这个人的信息.而实际上,有相同特征的人太多了,常常返回一个集