Ravendb RavenStudio使用什么查询和索引来聚合“集合”选项卡中显示的文档类型?

Ravendb RavenStudio使用什么查询和索引来聚合“集合”选项卡中显示的文档类型?,ravendb,Ravendb,我想为我的Raven数据库中的每个文档获取Raven Clr类型。我尝试了以下索引,但仅检索文档Id: 地图: 转换: from result in results select new {Id = result.Id, DocumentType = result.DocumentType, LastModified = result.LastModified} 我的目标是获取文档元数据并显示一个独特的集合/文档类型列表,如RavenStudio。我想创建一个投影并填充

我想为我的Raven数据库中的每个文档获取Raven Clr类型。我尝试了以下索引,但仅检索文档Id:

地图:

转换:

from result in results
            select new {Id = result.Id, DocumentType = result.DocumentType, LastModified = result.LastModified}
我的目标是获取文档元数据并显示一个独特的集合/文档类型列表,如RavenStudio。我想创建一个投影并填充以下类的列表:

public class MetaDocument
{
  public string Id{get; set;}
  public string DocumentType {get; set;}
  public DateTime LastModified {get; set;}
}
我只能获取文档id,其他值返回为null

注意 我按照Fitzchak的建议检查了Raven实体名称。它是一个人口众多的地方

编辑

我找到了地图改成包含的地方

DocumentType = ((dynamic)doc)[""@metadata""][""Raven-Entity-Name""]
结果是一样的

编辑2


我在RavenStudio中检查了查询结果,并且投影本身包含LastModified和DocumentType的null。这些字段是否需要存储才能访问?

RavenDB Studio使用由Studio创建的
Raven/DocumentsByEntityName
索引(默认情况下)。这是一个简单的索引(仅地图)

地图:


谢谢我已经试过了,但是当我引用标签的时候,我会回拉null。换句话说,我可以查询并获取文档的ID,但是当我试图获取实际的标记值时,我得到了一个空值。我遗漏了什么吗?您没有在文档上设置“Raven实体名称”元数据项。客户机API会为您处理这个问题,但是如果您使用的是原始http API,您应该自己设置这个值。在文档上适当地设置了“Raven Entity Name”。我要的是Raven实体名称,而不是文档本身。我想我可以做一个投影来获得Id、实体名称(DocumentType)和LastModified。我的投影只返回Id。
DocumentType = ((dynamic)doc)[""@metadata""][""Raven-Entity-Name""]
from doc in docs 
let Tag = doc["@metadata"]["Raven-Entity-Name"]
select new { Tag, LastModified = (DateTime)doc["@metadata"]["Last-Modified"] };