首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >ObjectQuery作为ESQL中的参数

ObjectQuery作为ESQL中的参数
EN

Stack Overflow用户
提问于 2011-11-21 05:55:45
回答 1查看 255关注 0票数 0

假设我有两个实体:具有N:1关系的EntSubEnt。因此,这里有导航属性SubEnt.EntsEnt.SubEnt。另外,我还定义了一些ObjectQuery:

代码语言:javascript
复制
ObjectQuery<SubEnt> se;

如何创建从Ent中选择具有来自seEnt.SubEnt的所有实体的ESQL查询?大概是这样的:

代码语言:javascript
复制
SELECT VALUE it FROM Ent WHERE Ent.SubEnt IN @p

其中@p == se.它看起来像一个嵌套查询。但是这种语法是不正确的,因为“只支持标量类型”。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-11-21 17:16:37

一旦你有了ObjectQuery,你就不能把它传递回ESQL。因此,您要么必须使用ObjectQuery编写整个查询,而不能分隔se,要么必须使用ESQL语言本身。在后一种情况下,尝试如下所示:

代码语言:javascript
复制
var query = from e in context.Ents
            join s in se on e.Ent.Id equals s.Id
            select e;

除非你的例子只是更大查询的一些简化,否则你也可以简单地尝试:

代码语言:javascript
复制
var query = se.SelectMany(s => s.Ents).Distinct();
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8205065

复制
相关文章

相似问题

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