Statistics RavenDB:Raven查询未返回具有文档授权的正确计数
//下面是使用上述模型的代码。我有17000份这种型号的文件Statistics RavenDB:Raven查询未返回具有文档授权的正确计数,statistics,authorization,ravendb,where-clause,Statistics,Authorization,Ravendb,Where Clause,//下面是使用上述模型的代码。我有17000份这种型号的文件 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 { ge
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; }
}
我仍然无法得到结果。我知道所有的数字
您能帮我弄清楚在不加载所有记录的情况下如何查找查询结果的TotalCount吗
我的要求是在可搜索的ExtJS分页网格中显示所有引擎。我需要知道要显示的记录总数,计算并显示页数(页数是固定的) 这是设计的,请参见
session.Query().Count()
将提供服务器上所有帖子的计数,而session.Query().ToList().Count()
将提供获取到客户端的帖子的计数
默认情况下,RavenDB apply.Take(128)用于查询,以鼓励您进行分页并在默认情况下保持安全。如果您想获取更多,则需要指定获取的数量,如
.take(1024)
,但默认情况下,服务器一次返回的项目不会超过1024个。您可以将服务器配置为执行此操作,但不建议这样做。您最好使用分页,因为用户无论如何不能一次处理那么多信息。您看到的是Raven的QueryStatistics忽略了授权包。这个
据我所知,在撰写本文时,还没有一种可靠的方法来获取查询的授权文档总数。在我看来,授权包应该包括一些对此的支持
我会仔细研究并在发现更多信息后更新此答案。谢谢Fitzchak。我同意。但授权未应用于命令会话。Query().Count()。当我为某个特定用户设置授权时,需要计算授权满足的所有文档的计数,而不是使用该模型获取数据库中的所有文档计数。如果考虑到这一点,您是否获得了正确的计数?另请参阅有关获得授权文件计数的任何新闻?
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>();
2. var query = ravenSession.Query<EngineInfo>().ToList();
RavenQueryStatistics queryStats;
query.Statistics(out queryStats);
queryStats.TotalResults