Ravendb:如何删除给定类型的所有文档

2024-04-18

更具体地说,在 Raven DB 中,我想创建一个具有如下签名的通用方法:

public void Clear<T>() {...

然后让 Raven DB 清除给定类型的所有文档。

我从 Ayende 的其他帖子中了解到类似的问题,您需要一个索引来批量执行此操作。

我认为这将涉及创建一个映射每个文档类型的索引 - 这似乎需要大量工作。

有谁知道创建上述方法的有效方法,该方法将直接在数据库中执行集合删除?


我假设您想从 .NET 客户端执行此操作。如果是这样,请使用标准DocumentsByEntityName index:

var indexQuery = new IndexQuery { Query = "Tag:" + collectionName };
session.Advanced.DocumentStore.DatabaseCommands.DeleteByIndex(
   "Raven/DocumentsByEntityName", 
   indexQuery, 
   new BulkOperationOptions { AllowStale = true });

var hilo = session.Advanced.DocumentStore.DatabaseCommands.Get("Raven/H‌​ilo/", collectionName);
if (hilo != null) {
    session.Advanced.DocumentStore.DatabaseCommands.Delete(hilo.‌​Key, hilo.Etag);
}

Where collectionName是您收藏的实际名称。

第一个操作删除项目。第二个删除高低文件 http://www.ravendb.net/docs/article-page/3.5/csharp/client-api/document-identifiers/hilo-algorithm.

另请查看官方文档 -如何使用索引删除或更新文档 https://ravendb.net/docs/article-page/3.5/csharp/client-api/commands/documents/how-to/delete-or-update-documents-using-index.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Ravendb:如何删除给定类型的所有文档 的相关文章

  • 每个 DocumentStore 的 WaitForNonStaleResults

    有没有办法告诉RavenDb对某些DocumentStore或DocumentSession的所有查询使用WaitForNonStaleResults模式 您可以使用DefaultQueryingConsistency Consistenc
  • 如何使用 RavenDB 中的自定义 JSON.NET 转换器反序列化为动态 DLL 中的类型?

    我的 RavenDB 对象是根据动态加载的 DLL 中的类型创建的 我无法将 DLL 加载到当前的执行上下文中AppDomain 因此 JSON 反序列化器无法找到类型 我将如何使用定制转换器使用运行时加载的程序集中的类型 NB I tri
  • RavenDB:如何防止 RAM 利用率过高?

    我的应用程序包括一些返回大型结果集的查询 尽管我已经用Take 300 lambda During peak usage times I ve seen Raven Server exe consume an unusually large
  • Ninject 使用 RavenDB 会话绑定到 MVC3 中的常量值的问题

    我见过很多使用 ASP NET MVC 配置 Ninject 的不同方法 但随着 MVC 框架的每个版本的发布 实现似乎都略有变化 我正在尝试将 RavenDB 会话注入我的存储库 这是我所拥有的几乎可以工作的东西 public class
  • RavenDb:更新非规范化参考属性值

    我已经实现了RavenDB非规范化参考 http ravendb net docs faq denormalized updates图案 我正在努力将静态索引和补丁更新请求连接在一起 以确保在引用的实例值更改时更新我的 非规范化引用属性值
  • 如何在 C# 中为 RavenDB 正确创建 Map/Reduce 索引

    我正在开发一个在后端使用 RavenDB 的应用程序 这是我第一次使用 Raven 我在 Map Reduce 方面遇到了困难 我已经阅读文档 http ravendb net docs client api querying static
  • Mongodb 有内存模式吗? [复制]

    这个问题在这里已经有答案了 可能的重复 运行集成测试时嵌入 MongoDB https stackoverflow com questions 6437226 embedded mongodb when running integratio
  • 在不使用默认 ID 生成策略时,如何加载受限于集合的 RavenDB 文档

    在 RavenDB 4 v4 0 3 patch 40031 中 我有两种文档类型 Apple and Orange 两者具有相似但又不同的属性 我在运行时遇到代码中的一个错误 有时会提供 Apple 的 ID 但会返回 Orange 可怕
  • RavenDB 对列表属性进行 Map/Reduce

    刚刚学习 Map Reduce 我错过了一个步骤 我读过这篇文章 使用 NET 客户端的 RavenDB Map Reduce 示例 https stackoverflow com questions 4253334 ravendb map
  • Azure 网站上的 RavenDb - 访问被拒绝

    我正在尝试 Azure 上的新网站功能 并尝试让 MVC 站点在嵌入模式下与 RavenDB 一起运行 本地一切正常 但在天蓝色中运行部署的站点时出现此错误 System Net NetworkInformation NetworkInfo
  • 为什么在 RavenDB 中存储 Nancy.DynamicDictionary 只保存属性名称而不保存属性值?

    我正在尝试保存 RavenDB build 960 通过其内置传递到 Nancy 模块的表单数据项的名称和值Request Form 如果我保存一个简单的实例dynamic对象 带有测试属性和值 然后一切正常 并且属性名称和值都被保存 但是
  • 如何在 ravendb 3.5 中查找附件?

    我目前正在调试一些代码 这些代码应该返回给定文档的附件 但没有返回任何附件 Raven studio 表明数据库中有附件 它向我显示存在多个附件 但我无法通过工作室 Web UI 查看特定文档是否有附件 有没有办法通过工作室用户界面查询附件
  • Ravendb - 自动生成自己的密钥

    我当前有一个对象 它有一个名为 Id 的公共属性 当我存储对象时 我希望 Id 成为数据的一部分 而不是像当前那样成为文档 Id 创建文档存储时 我仅设置连接字符串 using var session documentStore OpenS
  • 保护 Raven 数据库的安全

    我正在尝试将 RavenDB 的访问权限限制为只有一名用户 更改设置以保护数据库后 我仍然可以访问 RavenDB 管理工作室 但我不确定为什么 我将 RavenDB 作为 Windows 服务运行 并且使用构建 573 这是我的 Rave
  • RavenDB 排序依据

    在我的 C 应用程序中 我有一个对象集合 其中包含int Order属性范围从 1 到n 当我这样做时 var listings session Query
  • RavenDB 会话 > 30

    如果我尝试保存要保存的项目列表 其中计数 gt 30 我会收到一条错误消息 最大请求数 30 已允许此会话 到达 Raven限制了数量 允许会话的远程调用 作为预警系统 预计会议时间很短 住过 Raven提供设施 像 Load string
  • Ravendb 计数查询

    我需要获取特定集合中的文档计数 现有索引 Raven DocumentCollections 存储与属于该集合的实际文档配对的集合的计数和名称 如果可能的话 我想从这个索引中获取计数 这是 Raven Document Collection
  • 使用 RavenDb 查询字典

    我有一个类定义为 public class Student public string Id get set public IDictionary
  • RavenDB 错误:我无法从不同的类访问 var 存储。有什么建议

    RavenDB 错误 var 存储不是全局变量 如何创建一个可以使用访问文档存储的类 非常感谢任何有关此代码拒绝运行原因的评论 class Program static void Main string args var store new
  • 使用 RavenDB 的“传统”一对多查询

    我知道include RavenDB 的功能 它允许我在数据库的一次往返中立即获取引用的文档 但我的问题是 我首先获取的文档不包含对 其他 文档的引用 但 其他 文档引用了当前文档 想象一下我们在世界各地都有站点的设置 每个site可能会触

随机推荐