into(C# 参考)

可以使用 into 上下文关键字创建一个临时标识符,以便将 groupjoinselect 子句的结果存储到新的标识符中。此标识符本身可以是附加查询命令的生成器。在 groupselect 子句中使用新标识符的用法有时称为“延续”。

下面的示例演示使用 into 关键字来启用临时标识符 fruitGroup,该标识符具有推断类型 IGrouping。通过使用该标识符,可以对每个组调用 Count<TSource> 方法,并且仅选择那些包含两个或更多个单词的组。

class IntoSample1
{
    static void Main()
    {

        // Create a data source.
        string[] words = { "apples", "blueberries", "oranges", "bananas", "apricots"};

        // Create the query.
        var wordGroups1 =
            from w in words
            group w by w[0] into fruitGroup
            where fruitGroup.Count() >= 2
            select new { FirstLetter = fruitGroup.Key, Words = fruitGroup.Count() };

        // Execute the query. Note that we only iterate over the groups, 
        // not the items in each group
        foreach (var item in wordGroups1)
        {
            Console.WriteLine(" {0} has {1} elements.", item.FirstLetter, item.Words);
        }

        // Keep the console window open in debug mode
        Console.WriteLine("Press any key to exit.");
        Console.ReadKey();
    }
}
/* Output:
   a has 2 elements.
   b has 2 elements.
*/

仅当希望对每个组执行附加查询操作时,才需要在 group 子句中使用 into。有关更多信息,请参见 group 子句(C# 参考)

有关在 join 子句中使用 into 的示例,请参见 join 子句(C# 参考)

请参阅

查询关键字(C# 参考)

LINQ 查询表达式(C# 编程指南)

group 子句(C# 参考)