C# 具有多个语句的LINQ查询语法
可以使用LINQ的查询语法重写此方法吗C# 具有多个语句的LINQ查询语法,c#,linq,linq-query-syntax,C#,Linq,Linq Query Syntax,可以使用LINQ的查询语法重写此方法吗 public IEnumerable<Item> GetAllItems() { return Tabs.SelectMany(tab => { tab.Pick(); return tab.Items; }); } public IEnumerable GetAllItems() { 返回选项卡。选择多个(选项卡=> { tab.Pick(); 返
public IEnumerable<Item> GetAllItems()
{
return Tabs.SelectMany(tab =>
{
tab.Pick();
return tab.Items;
});
}
public IEnumerable GetAllItems()
{
返回选项卡。选择多个(选项卡=>
{
tab.Pick();
返回页签。项目;
});
}
我不知道在哪里放置
tab.Pick()
方法调用。否,LINQ中的查询表达式要求每个选择部分等都是一个表达式,而不是多个语句
但是,您可以编写一个单独的方法:
public IEnumerable<Item> PickItems(Tab tab)
{
tab.Pick();
return tab.Items;
}
(或者你想做的任何事情。)
var query = from tab in tabs
from item in PickItems(tab)
select item.Name;