首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在内存对象和db中使用Any()的Linq查询

在内存对象和db中使用Any()的Linq查询
EN

Stack Overflow用户
提问于 2012-11-24 02:47:10
回答 1查看 732关注 0票数 0

可能重复: Only primitive types (‘such as Int32, String, and Guid’) are supported in this context

好的,我有一个用户表和一个users_users表,它基本上只是将两个用户联系在一起。

我的实体框架在模型中没有users_users,它只显示为主用户对象的关系/属性。这种关系表现为u.user1

因此,u.user1是users_users表中用户的集合。这很好但是..。

我正在尝试创建一个查询,在该查询中,我可以从用户表中选择所有用户,还可以在select子句中创建一个布尔变量(在下面的代码中称为添加),该变量将显示是否存在user_user连接的记录。

我得到的错误“无法创建一个常量值的类型仅基本类型”。

我知道在select中使用"Any()“命令时,我不能使用带有Linq查询的内存中的对象,所以我该如何做呢?我是新来的LINQ。

代码语言:javascript
复制
using (myEntities entities = new myEntities())
        {
             Model.user u = entities.users.Single(m => m.emailLogon == System.Web.HttpContext.Current.User.Identity.Name);
             ObjectQuery<Model.user> susers = entities.users;

            var pplquery = (from suser in susers
                            select new { userId = suser.IdUser, FirstName = suser.contactinfo.FirstName, LastName = suser.contactinfo.LastName, added = 
                                u.user1.Any(cusr => cusr.IdUser == suser.IdUser)}).Take(15);


        }
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-11-24 03:19:05

代码语言:javascript
复制
using (myEntities entities = new myEntities())
        {
             Model.user u = entities.users.Single(m => m.emailLogon == System.Web.HttpContext.Current.User.Identity.Name);
             var susers = entities.users.ToList();

            var pplquery = (from suser in susers.AsQueryable()
                            select new { userId = suser.IdUser, FirstName = suser.contactinfo.FirstName, LastName = suser.contactinfo.LastName, added = 
                                u.user1.Any(cusr => cusr.IdUser == suser.IdUser)}).Take(15);


        }

将其转换为执行查询的列表,然后可以创建从该集合中选择的新对象。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13537797

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档