0

Breeze のドキュメントに、セキュリティと、返されるデータに制限を設定する方法の 2 つのトピックがありません。

誰かがデータベース内のすべてを削除したり、すべてを返したりしたくありません。

OData を使用する必要がありますか? Odata を使用すると、必要な制限を設定できます。

4

1 に答える 1

0

「セキュリティ」は、言い尽くせない巨大で無秩序なトピックです。私はそれを削りたいと思っています。

最大レコード数の制限については、[Queryable]属性のPageSizeオプションを使用します。属性は[BreezeQueryable]このオプションを継承するため、Web API コントローラー メソッドまたはサポートするリポジトリ メソッドを次のように記述できます。

[HttpGet]
[BreezeQueryable(PageSize=100)] // 最大 100 件の注文を返します
public IQueryable Orders() {
   ContextProvider.Context.Orders を返します。
}

メソッド内のクエリに top を追加することで、結果を制限することもできます。

[HttpGet]
public IQueryable Orders() {
   ContextProvider.Context.Orders.take(100); を返します。
}

ただし、特定のクエリ条件が通過しない場合があります。まず試してみてください。

于 2013-08-28T00:52:20.287 に答える