[英]How to sort a child list in Linq2DB?
我有一個表,其中每一行都擁有來自另一個表的一組行,使用LinqToDB.Mapping
類。
[Table(Name = "SECTORS")]
public partial class Sector
{
[Column(Name="ID"), NotNull, PrimaryKey]
public int Id { get; set; }
[Column(Name = "NAME"), NotNull]
public string Name { get; set; }
[Association(ThisKey = nameof(Id), OtherKey = nameof(SubSector.SectorId))]
public List<SubSector> Subsectors { get; set; }
}
[Table(Name = "SUBSECTORS")]
public partial class SubSector : Sector
{
[Column(Name = "SECTORID"), NotNull]
public int SectorId { get; set; }
}
我已經研究出如何在加載父對象列表時使用 Association header 自動加載所有子對象。
var query = from s in Sectors.LoadWith(s => s.Subsectors)
orderby s.Name
select s;
如何設置子部門列表的Subsectors
順序?
我可以稍后對其進行排序,但最好由數據庫完成排序。
似乎沒有 Association 屬性的屬性,並且添加到orderby
行將對父對象進行排序(如果它甚至有效)。
LoadWith
在其主體中支持一組 LINQ 運算符。 所以只需添加OrderBy
。
var query =
from s in Sectors.LoadWith(s => s.Subsectors.OrderBy(x => x.SectorId))
orderby s.Name
select s;
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.