[英]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.