簡體   English   中英

Lambda function 使用分組依據

[英]Lambda function using group by

var result = booklist.GroupJoin(authorlist, authorlist2,
    x => x.ISBN,
    y => y.AuthorId,
    z => z.AuthorID,
    (x, y, z) => new
    {
        x.Book_Name,
        y.AuthorName,
        z.AuthorName
    }).GroupBy(od => new
{
    od.Book_Name,
    od.AuthorName
}).OrderBy(d => d.Key.Book_Name).Select(grp => new

{
    AuthorName = grp.Key.AuthorName,
    Book_Name = grp.Key.Book_Name,
});

foreach (var item in result)

{
    Console.WriteLine(string.Format(" BookName:-   {0}\n AuthorName:- {1}\n", item.Book_Name, item.AuthorName));
}

在此處輸入圖像描述

在這里,我使用 lambda function 打印一本書和兩個作者姓名,但在 GroupJoin 上顯示錯誤。 請檢查並告訴我我在哪里做錯了

錯誤描述說 GroupJoin 方法沒有包含六個參數的重載。 GroupJoin 只能通過兩個導航屬性聯系兩個列表,每個列表一個。

列表分組連接后將如下所示:

var result = booklist.GroupJoin(concatenatedAuthorlist,
        left => left .AuthorId,  // navigation from booklist
        right => right .AuthorID,  // navigation from concatenatedAuthorlist
        (left, right) => new
        {
            left.Book_Name,
            left.AuthorName,
            right.AuthorName
        }).
        //omitted for brevity

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM