【发布时间】:2020-03-13 03:31:40
【问题描述】:
我有简单的 POCO 课程:
public class Library
{
[Key]
public string LibraryId { get; set; }
public string Name { get; set; }
public List<Book> Books { get; set; }
}
public class Book
{
[Key]
public string BookId { get; set; }
public string Name { get; set; }
public string Text { get; set; }
}
我有一个查询,它返回已包含书籍的图书馆:
dbContext.Set<Library>.Include(x => x.Books);
我正在尝试跳过 5 个库,然后选择其中的 10 个:
await dbContext.Set<Library>.Include(x => x.Books).Skip(5).Take(10).ToListAsync();
问题是,当我尝试对此查询执行 Skip 和 Take 方法时,它返回的图书馆没有包含书籍列表。
如何使用Skip 和Take 保存以前包含的实体?
【问题讨论】:
-
Skip和Take使用的语法是什么?既然这是问题所在,您可能应该在问题中包含这些内容。 -
@MattRowland 编辑了问题,问题出在这些方法中。
-
你有没有在你的连接中使用它(options => options.UseSqlServer(connection).UseRowNumberForPaging());
-
它有效,但它不弃用仅用于向后兼容的方法吗?
-
@BassamAlugili 如果我使用
UseRowNumberForPaging()),Skip不适用于此。
标签: c# entity-framework entity-framework-core