Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/linq/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 使用linq循环odata结果_C#_Linq - Fatal编程技术网

C# 使用linq循环odata结果

C# 使用linq循环odata结果,c#,linq,C#,Linq,我有一个odata服务,通过linq查询从中提取一些数据 var results = Teams.Expand("MemberUsers").Where(t => t.Company == "MyCompany"); foreach(var result in results) { ... do some stuff; } 我遇到的问题是,变量结果实际上是Team类型,而不是User类型。 成员用户是团队中的用户的集合。所以变量results只有一个项,但有多个用户 访问团队中的用户

我有一个odata服务,通过linq查询从中提取一些数据

var results = Teams.Expand("MemberUsers").Where(t => t.Company == "MyCompany");
foreach(var result in results)
{
  ... do some stuff;
}
我遇到的问题是,变量结果实际上是
Team
类型,而不是
User
类型。
成员用户
团队
中的
用户
的集合。所以变量
results
只有一个项,但有多个用户


访问
团队中的用户的正确语法是什么?

然后您需要选择用户:

var results = Teams.Expand("MemberUsers").Where(t => t.Company == "MyCompany").select(x=>x.Users).ToList();


任何时候,如果您想要的类型与您拥有的类型不同,请期待
select
将成为解决方案的一部分。我似乎得到
NotSupportedException:只能在上次导航后指定查询选项(orderby、where、take、skip)。
此处的所有建议。
var results = Teams.Where(t => t.Company == "MyCompany").SelectMany(t => t.MemberUsers);
var results = from t in Teams
              where t.Company == "MyCompany"
              from m in t.MemberUsers
              select m;