我的申请表中有AbstractIndexCreationTask
如下:
public class EventsForMainQueries : AbstractIndexCreationTask<Event>
{
public EventsForMainQueries()
{
Map = docs => from doc in docs
select new
{
DatePublished = doc.DatePublished,
IsDeleted = doc.IsDeleted,
Author = doc.Author,
EventDate = doc.EventDate
};
Index(x => x.DatePublished, FieldIndexing.Default);
Sort(x => x.DatePublished, SortOptions.String);
Index(x => x.EventDate, FieldIndexing.Default);
Sort(x => x.EventDate, SortOptions.String);
}
}
但是,RavenDB仍在创建以下自动索引。
我需要在IndexCreationTask中更改哪些内容以防止生成临时/自动索引?
答案 0 :(得分:2)
您是否曾在服务器上调用IndexCreation.CreateIndexes(typeof(EventsForMainQueries).Assembly, documentStore);
或以其他任何方式创建该索引?
您还可以使用以下方式“强制”您正在阅读的索引:
session.Query<Event, EventsForMainQueries>()....
如果您的索引不在服务器上,则此查询错误不会创建临时索引。
答案 1 :(得分:0)
试试这个
存储索引:
EventsForMainQueries.Execute(DocumentStore);
查询事件:
Session.Query<Event, EventsForMainQueries>()