假设我有 2 个表,table1 和 table2,具有共享密钥“id”
如果我想使用 sql 对这两个表进行内部联接,我会做类似的事情
select id, x, y, z
from table1
inner join table2
on table1.id = table2.id
我现在得到表 1 中仅在表 2 中出现的行。
我如何获得 wcf 数据服务/odata linq 语法中的等效项?
我期待类似的事情:
var q = (from t in svc.Table1.Expand("Table2")
where t.Table2.Any()
select t) as DataServiceQuery<Table1>;
但这让我有一个例外Any()
.
我试过了.Join
这也不支持。
我试过了.Count
那也失败了。
.Intersect
看起来只需要另一个枚举,所以这看起来不像我想要的......
我想我错过了一些非常明显或简单的东西......
Edit:这似乎是这个的重复如何像 SQL 连接一样使用 OData Expand? https://stackoverflow.com/questions/3920758/how-do-i-use-odata-expand-like-a-sql-join
看看这类问题的答案question http://forums.oreilly.com/content/C-3-0-in-a-Nutshell/21324/Doing-Joins-Between-Odata-Resources-Using-Linqpad/。当前版本的 WCF 数据服务 (OData) 不支持联接,即使您的基础数据协定支持联接(即,例如,如果您分层在实体框架 4 之上)。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)