RavenDB 可以为带连字符的集合名称创建索引吗?

Can RavenDB create an index for a hyphenated collection name?

我正在尝试从 RavenDB Studio 中为名为 employee-tickets 的集合创建索引,但我似乎找不到正确的语法。有人知道这个秘密吗?

我试过 from t in docs["employee-tickets"] 但只是抱怨以下错误:

Cannot apply indexing with [] to an expression of type

我知道我可以重命名我的实体,但我只是不想:)

我认为这不是一个正确的命名集合的方式。当然,在 .net 中,您不能用“-”命名一个对象,然后您就不能拥有一个具有该名称的集合。

您可以使用的语法是:

docs.CollectionName.Select(element => new {
    PropertyName = element.PropertyName
    .
    .
    .
})

from element in docs.CollectionName
select new {
   PropertyName = element.PropertyName
}

你可以,但不推荐,你可以使用:

from doc in docs
where doc["@metadata"]["Raven-Entity-Name"] == "employee-tickets"
// rest of index

但我建议使用标识符。