我在 Breeze 文档中遗漏了两个主题,即安全性和如何对返回的数据设置限制。
我不希望有人删除数据库中的所有内容,也不想返回所有内容。
我应该使用 OData 吗?使用 Odata 我可以设置我想要的限制。
我在 Breeze 文档中遗漏了两个主题,即安全性和如何对返回的数据设置限制。
我不希望有人删除数据库中的所有内容,也不想返回所有内容。
我应该使用 OData 吗?使用 Odata 我可以设置我想要的限制。
“安全”是一个庞大而庞大的话题,永远都说不完。我希望能解决它。
至于限制最大记录,我会使用[Queryable]
属性的PageSize
选项。该[BreezeQueryable]
属性继承了此选项,因此您可以编写 Web API 控制器方法或支持存储库方法,如下所示:
[HttpGet] [BreezeQueryable(PageSize=100)] // 最多返回 100 个订单 公共可查询订单(){ 返回 ContextProvider.Context.Orders; }
您还可以通过在方法内的查询中添加 top 来限制结果。
[HttpGet] 公共可查询订单(){ 返回 ContextProvider.Context.Orders.take(100); }
但是,某些查询条件可能无法通过。先试试看。