如何在RavenDB中以編程方式創建索引?以編程方式創建索引
我試着按照這個。
這是我的索引創建:
public class MyIndex : Raven.Client.Indexes.AbstractIndexCreationTask<MyEntity>
{
public MyIndex()
{
Map = col => col.Select(c => new
{
code = c.Code,
len = c.Code.Length,
sub = c.Code.Substring(0, 1)
});
}
}
這裏是來電者:
var store = new Raven.Client.Document.DocumentStore
{
Url = "http://localhost:8080"
};
store.Initialize();
try
{
using (var session = store.OpenSession("MyDB"))
{
Raven.Client.Indexes.IndexCreation.CreateIndexes(
typeof(MyIndex).Assembly, store);
}
}
finally
{
store.Dispose();
}
該指數創建,但不是在MYDB但在系統數據庫中。
如何在MyDB中創建索引?我創建索引的方式是否正確?
我得到一個錯誤,提供者的SourceProvider在烏鴉2375中爲空。現在研究這個...讓我知道你是否有這方面的細節。 – Steve
var provider = new CatalogExportProvider(catalog) { SourceProvider = new CatalogExportProvider(catalog) }; 解決了我的問題並創建了索引。 – Steve
@Steve - 感謝您的支持。不知道我上次遇到錯誤,但現在已修復。你的方式也不錯,但是我編輯的代碼只是少寫代碼,而且Raven在自己的'CreateIndexes'方法中做了什麼。 –