Raven.Client.Embedded.EmbeddableDocumentStore
次のように、単体テスト プロジェクトで (Build 960)を使用しようとしています。
private IDocumentStore CreateDocumentStore()
{
var store = new EmbeddableDocumentStore
{
RunInMemory = true,
Conventions = new DocumentConvention
{
DefaultQueryingConsistency = ConsistencyOptions.QueryYourWrites,
IdentityPartsSeparator = "-"
}
};
store.Initialize();
IndexCreation.CreateIndexes(typeof (RavenIndexes).Assembly, store);
return store;
}
NuGet 経由で次の RavenDB コンポーネントをインストールしました。
- RavenDB.Embedded
- RavenDB.クライアント
Raven.Database 1.0.0.0 アセンブリが見つからないため、上記のコードは失敗します。これを修正するために、nuget を介して RavenDB.Database パッケージもインストールしました。これにより、私が望まないもののスタック全体が追加されました。これは、このパッケージのナゲットの説明を考えると予想されることです。
RavenDB を拡張する場合は、このパッケージを使用します。RavenDB.Client パッケージにあるクライアント API を使用するために、既存の RavenDB サーバーを使用するだけの場合は、このパッケージを使用しないでください。
NuGet を使用して RavenDB.Database パッケージをアンインストールしようとすると、次のことができないと表示されます。
Uninstall-Package : 「RavenDB.Embedded 1.0.960」が依存しているため、「RavenDB.Database 1.0.960」をアンインストールできません。
じゃあ何をすればいいの?NuGet の純度を台無しにして、未使用の参照 (RavenDB.Smuggler
など) をすべて単体テスト プロジェクトから手動で削除し、RavenDB.Database
参照のみを残しますか? それとも私はどこかで道に迷ったのでしょうか?もちろん、 RavenDB.DatabaseEmbeddableDocumentStore
パッケージ全体をインストールする必要はありません。
ありがとう