如何在 RavenDB 中没有给定索引的情况下删除集合?

Los*_*ary 1 c# ravendb .net-core

我看到了通过查询删除集合实体的例子;
https://ravendb.net/docs/article-page/4.0/Csharp/client-api/operations/delete-by-query

但我的问题是,如何在不给出索引的情况下删除集合?

举个例子,我像这样创建/插入一个集合到RavenDB;

using (IDocumentSession session = _documentStore.OpenSession())
{
    session.Store<TEntity>(entity);
    session.SaveChanges();
}
Run Code Online (Sandbox Code Playgroud)

我没有创建任何索引。刚刚将一些数据存储到 RavenDB。我在 api 中查找了类似的东西;

using (IDocumentSession session = _documentStore.OpenSession())
{
    session.DeleteAll<TEntity>()
    session.SaveChanges();
}
Run Code Online (Sandbox Code Playgroud)

但这并不存在。那么如何在没有给定索引的情况下删除实体呢?

Fit*_*aki 5

以下代码将直接在集合上运行,无需创建索引:

var queryToDelete = new IndexQuery { Query = $"FROM {collection}" };
var operation = store.Operations.Send(new DeleteByQueryOperation(queryToDelete, new QueryOperationOptions { AllowStale = false }));
operation.WaitForCompletion(TimeSpan.FromSeconds(60));
Run Code Online (Sandbox Code Playgroud)