【发布时间】:2011-12-22 20:05:55
【问题描述】:
我有以下两个类:
书页
- chapter_title
- 章节内顺序
- (其他字段)
章节
- chapter_title
- 订购
我有一系列 book_pages 及其章节标题。我希望能够按其“chapter_title”出现在“章节”集合中的顺序对 book_page 集合进行排序,然后按“章节内的顺序”字段进行排序。
我尝试在 chapter_title 列上编写连接,然后按 chapter.order 排序,然后按 page.order_within_page,但没有运气。有什么建议吗?
我的代码:
var ordered_pages= from chapter in chapters
join page in book_pages
on chapter.chapter_title equals page.chapter_title
select new{order = chapter.order,page = page}
var finalList = from row in ordered_pages.OrderBy(c => c.order).ThenBy(p =>p.page.order_within_chapter)
select row.page;
这并没有真正起作用,即使它起作用也很丑陋。我是否错过了使用 LINQ 执行此操作的某种方式?
【问题讨论】:
-
如果您发布损坏的代码会有所帮助,因为至少在概念上,您已经完成的应该可以工作。
-
@brandon 发布您的 LINQ 查询,让我们知道它是如何不工作的。
标签: c# linq-to-sql join