http://ravendb.net/tutorials/hello-worldにあるコードに基づいて、RavenDBの簡単なテストを正常に実行できました。
次に、Embedded Mannerで実行しようとしましたが、次のエラーが発生し続けます。
Message: Could not find transactional storage type: Raven.Storage.Esent.TransactionalStorage, Raven.Storage.Esent
StackTrace: at Raven.Database.Config.InMemoryRavenConfiguration.CreateTransactionalStorage(Action notifyAboutWork) in c:\Builds\raven\Raven.Database\Config\InMemoryRavenConfiguration.cs:line 272
at Raven.Database.DocumentDatabase..ctor(InMemoryRavenConfiguration configuration) in c:\Builds\raven\Raven.Database\DocumentDatabase.cs:line 109
at Raven.Client.Client.EmbeddableDocumentStore.InitializeInternal() in c:\Builds\raven\Raven.Client.Embedded\EmbeddableDocumentStore.cs:line 130
at Raven.Client.Document.DocumentStore.Initialize() in c:\Builds\raven\Raven.Client.Lightweight\Document\DocumentStore.cs:line 388
at Tests.RavenEmbedded.RavenDB..ctor() in C:\Users\Pranav\Documents\Projects\Repositories-Clone\Common-clone\Tests\RavenDB.cs:line 114
at Tests.TestRavenDB.Basics() in C:\Users\Pranav\Documents\Projects\Repositories-Clone\Common-clone\Tests\RavenDB.cs:line 170
設定:
ターゲットフレームワークは.NETFramework4です。
プロジェクトに次の参照を追加しました。
- \ RavenDB-Build-309 \ EmbeddedClient \ Raven.Client.Embedded.dll
- \ RavenDB-Build-309 \ Client \ Raven.Client.Lightweight.dll
- \ RavenDB-Build-309 \ EmbeddedClient \ Raven.Storage.Esent.dll
- \ RavenDB-Build-309 \ EmbeddedClient \ Raven.Storage.Managed.dll
コードは次のとおりです。
名前空間Tests.RavenEmbedded
{{
Raven.Client.Clientを使用します。
Raven.Client.Documentを使用します。
Raven.Storage.Esentを使用します。
Raven.Storage.Managedを使用します。
Tests.RavenDataを使用します。
クラスRavenDB
{{
public RavenDB()
{{
// EmbeddableDocumentStore store = new EmbeddableDocumentStore {DataDirectory = @ "C:\ Temp \ RavenData"};
//Raven.Storage.Esent.TransactionalStorage
var store = new EmbeddableDocumentStore {DataDirectory = @ "C:\ Temp \ RavenData"};
store.Initialize();
#regionデータの書き込み
using(var session = store.OpenSession())
{{
varproduct=新製品
{{
コスト=3.99m、
名前="ミルク"、
};
session.Store(product);
session.SaveChanges();
session.Store(new Order
{{
Customer = "customers / ayende"、
OrderLines =
{{
新しいOrderLine
{{
ProductId = product.Id、
数量=3
}、
}
});
session.SaveChanges();
}
#endregion
#regionデータの読み取り
using(var session = store.OpenSession())
{{
var order = session.Load( "orders / 1");
Debug.Print( "顧客:{0}"、order.Customer);
foreach(var orderLine in order.OrderLines)
{{
Debug.Print( "Product:{0} x {1}"、orderLine.ProductId、orderLine.Quantity);
}
session.SaveChanges();
}
#endregion
}
}
}
名前空間テスト
{{
パブリッククラスTestRavenDB
{{
public static void Basics()
{{
試す
{{
// var db = new RavenClientServer.RavenDB();
var db = new RavenEmbedded.RavenDB();
}
キャッチ(例外例)
{{
Debug.Print( "メッセージ:{0}"、ex.Message);
Debug.Print( "StackTrace:{0}"、ex.StackTrace);
}
}
}
}
私はこれを数日間検索してみましたが、いくつかの異なるバリエーションも試しました。何が起こっているのかわかりません。