RavenDB:Raven 查询未返回文档授权的正确计数

2023-12-25

  public class EngineInfo 
  {
    public int Id{get;set;}

    public int? AircraftId { get; set; }

    public string SerialNumber { get; set; }

    public int Position { get; set; }

    public string RegNumber { get; set; }
    }

// 这是使用上述模型的代码。我有 17,000 个该模型的文档

       ravenSession.Store(new AuthorizationUser
        {
            Id = "Authorization/Users/1",
            Name = "user-1",
            Permissions =
                            {
                                new OperationPermission
                                    {
                                        Allow = true,
                                        Operation = "EngineInfos/View",
                                        Tags = "Company/100"
                                    }
                            }
        });

 1. var query = ravenSession.Query<EngineInfo>();    

// 当我记录 query.Count() 时,我看到所有文档计数,即 17000,这忽略了我在 before 语句中设置的授权。如果我将 where 子句添加到上述语句中,它就会起作用,并且我可以看到正确的计数。但我想获取用户有权访问的所有文档。

 2. var query = ravenSession.Query<EngineInfo>().ToList();

现在,考虑到授权,我得到了正确的计数。但问题是除非我提到 Take(x),否则它不会返回所有结果。 我尝试过

   RavenQueryStatistics queryStats;
    query.Statistics(out queryStats); 


   queryStats.TotalResults 

我仍然无法获得授权结果。我得到了所有的计数。

您能帮我弄清楚在不加载所有记录的情况下查找查询结果的 TotalCount 吗?

我的要求是在可搜索的 ExtJS 分页网格中显示所有引擎。我需要知道要显示的记录总数,计算并显示页数(页数是固定的)。


这是设计使然,请参阅http://ravendb.net/docs/intro/safe-by-default http://ravendb.net/docs/intro/safe-by-default.

session.Query<Post>().Count()将为您提供服务器上所有帖子的计数,同时session.Query<Post>().ToList().Count()将给出获取到客户端的帖子的计数。

默认情况下,RavenDB 将 .Take(128) 应用于查询,以鼓励您进行分页并默认安全。如果您想获得更多,则需要指定要拿多少,例如.Take(1024),但默认情况下服务器不会一次返回超过 1024 个项目。您可以配置服务器来执行此操作,但不建议这样做。您最好使用分页,因为用户无论如何都无法一次处理那么多信息。

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

RavenDB:Raven 查询未返回文档授权的正确计数 的相关文章

  • SQL 多列大于表达式

    看到以下与游标分页结果相关的 SQL 但无法找到有关其部分工作原理的更多信息 SELECT b FROM books b WHERE b name id gt select b2 name b2 id from books b2 where
  • 如何在 R 中重新格式化表格?

    我加载了一个这样的表 V1 V2 V3 pat1 1 2 pat1 3 1 pat1 4 2 pat2 3 3 pat3 1 4 pat3 2 3 我需要将其格式化为如下所示 其中 V1 表示行 V2 表示列 V3 中的值 1 2 3 4
  • 了解 T-SQL stdev、stdevp、var 和 varp

    我很难理解这些统计函数的作用以及它们的工作原理 我很难理解 stdev 与 stdevp 以及 var 等价物的工作原理 有人可以帮我把这些分解成愚蠢的吗 在统计学中 标准差和方差是衡量总体中的指标偏离平均值 通常是平均值 的程度 标准差定
  • Web应用的细粒度授权

    我有一个 C net 应用程序 为公司的内部用户和外部客户提供服务 我需要进行细粒度的授权 比如谁访问什么资源 因此 我需要基于资源或基于属性的授权 而不是基于角色的授权 我想到的是 为我的 net 应用程序实现我自己的授权机制和 SQL
  • 如何确定一系列循环数据中的高值和低值?

    我有一些代表周期性运动的数据 所以 它从高点到低点 然后又回来 如果你要绘制它 它就像一个正弦波 然而 每个周期的幅度略有不同 我想列出整个序列中的每个最大值和最小值 如果有 10 个完整的周期 我最终会得到 20 个数字 其中 10 个为
  • R 中的线性插值

    我有一个真实数据的数据集 例如如下所示 Dataset 1 with known data known lt data frame x c 0 6 y c 0 10 20 23 41 39 61 plot known x known y t
  • 从 Python 中的 OLS 摘要获取 Durbin-Watson 和 Jarque-Bera 统计数据

    我正在运行一列值的 OLS 摘要 OLS 的一部分是 Durbin Watson 和 Jarque Bera JB 统计数据 我想直接提取这些值 因为它们已经被计算出来 而不是像我现在使用 durbinwatson 那样将这些步骤作为额外步
  • 如何清除 SQL Server 2005/2008 中的查询执行统计信息

    基于使用从这篇文章中获得的这段非常有用的 SQL 来获取查询执行统计信息最常执行的存储过程 代码日志 https stackoverflow com questions 1942726 most executed stored proced
  • 具有自定义字段名称的 RavenDB 查询索引

    我在 RavenDB 中收集了 Message 文档 定义 class Message string Content Tag Tags class Tag string Value 我有索引 from doc in docs Message
  • 在循环中预测.lm()。警告:排名不足的拟合预测可能会产生误导

    此 R 代码引发警告 Fit regression model to each cluster y lt list length y lt k vars lt list length vars lt k f lt list length f
  • 如何在 R 中手动编写正态分布核的似然值?

    具体来说 如何编码 x 和 mu 之差的乘积 精度矩阵以及 x 和 mu 之差的转置 我下面的代码正确吗 提前致谢 colSums dat mu mat solve sigma colSums dat mu mat 其中 mu mat 是重
  • 在Python中执行局部标准差

    我试图获取图像每个像素的局部标准差 这意味着对于每个像素 我想计算其值及其邻居值的标准差 我用了this http docs scipy org doc numpy reference routines statistics html图书馆
  • Raven Db 可以在 Winhost 上运行吗?

    我尝试在 Winhost 上以嵌入式模式运行 Ravendb 但我收到以下堆栈跟踪的安全异常 System Security CodeAccessSecurityEngine Check Object demand StackCrawlMa
  • Pyramid 中基于动态用户的授权

    我正在跟进Pyramid 文档中的安全指南 http docs pylonsproject org projects pyramid 1 1 narr security html以及 wiki 教程添加授权 http docs pylons
  • 使用 mysql 变量保存用于 where in 子句的逗号分隔值

    我必须运行这样的查询 查询 1 select something from sometable where someId in 1 2 3 我想为 ID 部分保留一个变量 如下所示 查询 2 set myIds 1 2 3 select s
  • Linq:Select 和Where 之间有什么区别

    The Select and WhereLinq 中提供了方法 对于这两种方法 每个开发人员都应该了解什么 例如 何时使用其中一种而不是另一种 使用一种相对于另一种的优势等 Where 查找匹配的项目并仅返回匹配的项目 过滤 gt IEnu
  • Python statsmodel.api 逻辑回归 (Logit)

    所以我尝试使用 python 的 statsmodels api 对二进制结果进行逻辑回归进行预测 我按照教程使用 Logit 当我尝试对测试数据集进行预测时 每个记录的输出都是 0 到 1 之间的小数 它不应该给我零和一吗 或者我是否必须
  • 在运行时用Dagger添加Retrofit RequestInterceptor

    我正在使用匕首和改装 我用 Dagger 注入我的 Retrofit 服务 现在我想做一个授权请求来获取 accessToken 之后 我想使用请求拦截器来增强我的 api 模块 以便将此访问令牌用于将来的请求 我的想法是在收到访问令牌后使
  • WPF 和 WCF 应用程序的用户身份验证/授权的“最佳实践”是什么?

    假设我有一个 NET 富客户端 WPF 应用程序 它将同时部署在 3 个不同的场景中 客户端和服务器代码在单个进程中运行 客户端代码在 Intranet 计算机上运行 并通过 WCF 与运行应用程序 域 基础设施代码的服务器计算机进行通信
  • RavenDB:为什么我会在此多重映射/归约索引中获得字段空值?

    受到 Ayende 文章的启发https ayende com blog 89089 ravendb multi maps reduce indexes https ayende com blog 89089 ravendb multi m

随机推荐

  • 云优化与云原生

    在尝试更好地理解云原生应用程序时 我遇到了云优化这个术语 有人可以帮助我了解云优化与云原生之间的区别吗 云优化涉及应用程序如何迁移到云或在那里开发和托管 如何通过优化过程来提供更多价值 降低成本 标准化事物 最初 一旦迁移或托管在云中 由于
  • 命令 APDU 在结果中返回 6985(不满足使用条件)

    我正在研究用 Java 读取智能卡 当我执行下面的代码时 卡返回 6985 不满足使用条件 TerminalFactory factory TerminalFactory getDefault List
  • 快速从网络抓取函数返回一个字符串

    好的 我正在抓取网页的一些基本数据 我想将我的代码重构为另一个类 并从我检索到的内容返回一个字符串 但这对于异步函数来说很困难 而且我对 swift 很陌生 我现在意识到这个函数无法返回字符串 但我不太清楚如何配置完成处理程序以及如何使用完
  • 添加新颜色以及自定义主题颜色 angular2 材质

    如何在 Angular 2 材质中添加新颜色 它在 ng2 material 文档中指定 color primary accent warn 被接受 我想添加类似 progressbarcolor 的内容 而不是在我的 angular2 材
  • 包括未找到模块 RubyMotion

    RubyMotion 中允许 mixin 吗 我有一个包含两个文件的目录 一个是类 另一个是模块 当我在类中包含模块 mixin 时 出现未找到错误 RM 中自动需要应用程序下的所有内容 对吗 谢谢你的帮助 找到了 http dylanma
  • Javascript WebWorker - 异步/等待

    我正在尝试卸载阻塞我的用户界面的长时间运行的进程 WebWorker 方法似乎是解决这种情况的最佳方法 但是 我需要使用的库之一具有 async await WebWorker 的 JS API 有限 并且似乎没有 async await
  • 比较 javascript/jquery 中的两种日期格式

    我有以下内容 var fit start time fit start time val 2013 09 5 var fit end time fit end time val 2013 09 10 if Date parse fit st
  • 如何解析rabbitmq状态输出?

    我在 Linux 上安装了 RabbitMQ 它是一个很棒的软件 当我运行这个命令时 sudo rabbitmqctl status 我得到一团糟的输出 pid 18665 running applications rabbitmq man
  • 如何通过代码打开 Vaadin ComboBox?

    是否可以开一个Vaadin ComboBox通过代码 我想展示两个相互依赖的组合框 当用户在第一个组合框中选择一个值时 我希望第二个组合框自动打开可能的选择 以便用户可以直接选择一个 而不必自己打开第二个组合框 也许我可以发送一个事件来触发
  • 如何比较java中的两个字符串并按字母顺序定义其中一个比另一个小?

    我想使用二分搜索算法来搜索用户在一个非常大的排序文件中输入的字符串 我无法将用户输入的字符串与位于文件中间行的字符串进行比较以继续我的二分搜索 例如 如果用户的字符串是abcda文件的字符串是abcza 很明显用户的字符串比文件的字符串小
  • 错误 C4996:“scanf”:此函数或变量在 C 编程中可能不安全

    我创建了一个小型应用程序 通过使用带参数的用户定义函数来查找最大数量 当我运行它时 它显示此消息 错误 1 错误 C4996 scanf 此函数或变量可能不安全 考虑使用 scanf s 代替 要禁用弃用 请使用 CRT SECURE NO
  • 由于私钥过滤器,使用signtool进行代码签名失败

    在尝试签署我工作的公司创建的一些安装程序时 我遇到了一个错误 但我无法解决 我正在使用已在另一台计算机 Win7 上成功使用的相同证书 以相同的方式签署准相同的安装程序 无论如何 在运行 CruiseControl net 的 Window
  • R Shiny - 了解更新相互依赖的输入时观察和观察事件之间的区别

    下面的应用程序有两个相互依赖的 numericInputs a and b 的价值input a is 1 input b和价值input b is 1 input a 每当用户更改输入的值时 我想相应地更新另一个输入的值 下面的代码包含两
  • 如何使这些动态类型函数类型安全? [关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 是否有任何编程语言 或类型系统 可以以静态类型和类型安全的方式表达以下 Python 函数 无需使用强制转换 运行时检查等 1 My
  • 在iPhone上播放第三方库解码的音频

    第三方库生成任何所需大小的 16 位带符号立体声样本的顺序缓冲区 我无法弄清楚使用哪些框架 函数来从这些缓冲区中播放 我一直在研究这个例子这个答案 https stackoverflow com questions 1710133 play
  • 重新连接后继续FTP下载

    重新连接ftp服务器后是否可以继续ftp下载 是的 在协议级别 在 RETR 之前发送服务器 REST 以查找文件中的某个位置 因此 如果文件已有 1500 字节 则执行 REST 1500 它将从第 1501 个字节开始发送 这是一个例子
  • 使用参数 {NDK_PROJECT_PATH=null 执行进程 .../ndk-bundle/ndk-build 时出错

    为什么我会收到下一个错误 附注没有任何ndk build文件夹位于ndk bundle这是什么意思 Build command failed Error while executing process home user Android S
  • Python发送UDP数据包

    我正在尝试编写一个程序来发送 UDP 数据包 如https wiki python org moin UdpCommunication https wiki python org moin UdpCommunication该代码似乎是 Py
  • 使用 boost Spirit (longest_d) 解析 int 或 double

    我正在寻找一种将字符串解析为 int 或 double 的方法 解析器应该尝试两种选择 并选择与输入流的最长部分匹配的一个 有一个已弃用的指令 longest d 正是我正在寻找的 number longest d integer real
  • RavenDB:Raven 查询未返回文档授权的正确计数

    public class EngineInfo public int Id get set public int AircraftId get set public string SerialNumber get set public in