C# Ravendb:按日期降序索引排序

C# Ravendb:按日期降序索引排序,c#,indexing,ravendb,C#,Indexing,Ravendb,我正在尝试创建一个索引,它将允许我按降序检索前n个项目 似乎没有按日期对索引排序的选项 我需要能够使用带有Take(n)子句的索引进行查询,以获取最后的n项 public class ConcernStateByDateIndex : AbstractIndexCreationTask<ConcernState> { public ConcernStateByDateIndex() { this.Map = concerns => from co

我正在尝试创建一个索引,它将允许我按降序检索前n个项目

似乎没有按日期对索引排序的选项

我需要能够使用带有
Take(n)
子句的索引进行查询,以获取最后的
n

public class ConcernStateByDateIndex : AbstractIndexCreationTask<ConcernState>
{
    public ConcernStateByDateIndex()
    {
        this.Map = concerns => from concern in concerns
                               select concern.EntryDate;
        this.Sort(_ => _.EntryDate, SortOptions.?????)
    }
}
公共类ConcernStateByDateIndex:AbstractIndexCreationTask
{
公共ConcernStateByDateIndex()
{
this.Map=关注点=>来自关注点中的关注点
选择concern.EntryDate;
this.Sort(=>.EntryDate,SortOptions.)
}
}

如果从不在索引中排序,则在查询索引时使用查询对结果进行排序。索引中的Sort选项用于告诉RavenDB字段是否为数字字段,以便从查询中进行排序

查询中的排序如下所示:

session.Query<ConcernState>().OrderByDescending(x => x.EntryDate);
session.Query().OrderByDescending(x=>x.EntryDate);

如果从不在索引中排序,则在查询索引时使用查询对结果进行排序。索引中的Sort选项用于告诉RavenDB字段是否为数字字段,以便从查询中进行排序

查询中的排序如下所示:

session.Query<ConcernState>().OrderByDescending(x => x.EntryDate);
session.Query().OrderByDescending(x=>x.EntryDate);

除了synhershko在下面回答的排序之外,您的索引映射应该是一个匿名对象,包含您要索引的值,而不仅仅是一个值。除了synhershko在下面回答的排序之外,您的索引映射应该是一个匿名对象,包含您要索引的值,而不仅仅是一个值。