Raven DB 内のドキュメントのコレクション全体を削除する必要があります。1 つずつ (ドキュメント) を削除するのは賢明な選択ではありません。これを簡単に行う方法はありますか?
1516 次
2 に答える
6
セットベースの操作を行うことができます。
store.DatabaseCommands.DeleteByIndex()これを行うには
store.DatabaseCommands.DeleteByIndex(
"Enquiries/MyEnquiryIndexName",
new IndexQuery { Query = "Id:*", },
allowStale: false);
@Marijinによるコードサンプル
于 2011-08-11T21:33:20.103 に答える
0
以前のバージョンについては不明ですが、以下は RavenDB 5.0 に適用されます
「Users」というコレクションからすべてのドキュメントを削除する場合は、コレクション名をDeleteByQueryOperationに渡すことができます。
DeleteByQueryOperation("from Users")
一般的なバージョンは次のようになります。
using Raven.Client.Documents;
using Raven.Client.Documents.Operations;
public class ExampleClass
{
public static void DeleteCollection<TEntity>(IDocumentStore store, string databaseName)
{
var collectionName = store.Conventions.GetCollectionName(typeof(TEntity));
store.Operations
.ForDatabase(databaseName)
.Send(new DeleteByQueryOperation($"from {collectionName}"));
}
}
于 2021-03-09T14:44:00.403 に答える