如果在启动时为自动查询设置了最大限制:
Plugins.Add(new AutoQueryFeature { MaxLimit = 100 });
在我覆盖自动查询的特定服务终结点上是否有覆盖它的方法?
我希望对所有公共端点强制执行此操作,但在管理员方面,我希望能够获取尽可能多的数据,但是当我将AutoQuery对象注入服务时,我看不到任何方法可以覆盖查询限制
答案 0 :(得分:2)
您需要创建一个Custom AutoQuery Implementation,您可以在其中覆盖自动查询生成的SQL表达式,例如:
echo
或者,您还应该可以使用AutoQuery Filter覆盖该限制:
public class MyQueryServices : Service
{
public IAutoQueryDb AutoQuery { get; set; }
//Override with custom implementation
public object Any(FindMovies query)
{
var q = AutoQuery.CreateQuery(query, base.Request);
q.Take(CustomLimit);
return AutoQuery.Execute(query, q);
}
}