我们说我们有这样的文件
public class Event
{
public string Id { get; set; }
public EntityDescriptor Venue { get; set; }
// Other properties omitted for simplicity
}
public class EntityDescriptor
{
public string Id { get; set; }
public string Name { get; set; }
}
像这样的索引
public class Events : AbstractIndexCreationTask<Event>
{
public Events()
{
Map = items => from e in items
select new
{
Venue_Id = e.Venue.Id,
Venue_Name = e.Venue.Name
};
}
}
尝试对Event.Venue.Id
session.Query<Event, Events>().Take(10).OrderBy(e => e.Venue.Id).ToArray();
发送的请求是
? /索引/活动和安培;的pageSize = 10安培; sort=__document_id
&安培; SortHint -__ DOCUMENT_ID =字符串
这是设计还是错误?
PS:OrderBy(e => e.Venue.Name)
按预期工作(sort=Venue_Name
)。
答案 0 :(得分:1)
这不是一个错误。 __document_id是包含文档ID的特殊已知字段。无论你是否拥有.Id属性,它都在那里。
修改的
我误解了你的问题。这确实是一个错误。我建议您向Raven forum发送一个简单的repro案例,让他们知道您正在使用的RavenDB版本。