mirror of
https://github.com/Biarity/Sieve.git
synced 2024-11-22 05:22:57 +01:00
Merge branch 'master' of https://github.com/Biarity/Sieve
This commit is contained in:
commit
afbd41e090
@ -45,17 +45,17 @@ Alternatively, you can use Fluent API to do the same. This is especially useful
|
|||||||
### 3. Get sort/filter/page queries by using the Sieve model in your controllers
|
### 3. Get sort/filter/page queries by using the Sieve model in your controllers
|
||||||
|
|
||||||
In the action that handles returning Posts, use `SieveModel` to get the sort/filter/page query.
|
In the action that handles returning Posts, use `SieveModel` to get the sort/filter/page query.
|
||||||
Apply it to your data by injecting `SieveProcessor` into the controller and using its `ApplyAll<TEntity>` method. So for instance:
|
Apply it to your data by injecting `SieveProcessor` into the controller and using its `Apply<TEntity>` method. So for instance:
|
||||||
```
|
```
|
||||||
[HttpGet]
|
[HttpGet]
|
||||||
public JsonResult GetPosts(SieveModel sieveModel)
|
public JsonResult GetPosts(SieveModel sieveModel)
|
||||||
{
|
{
|
||||||
var result = _dbContext.Posts.AsNoTracking(); // Makes read-only queries faster
|
var result = _dbContext.Posts.AsNoTracking(); // Makes read-only queries faster
|
||||||
result = _sieveProcessor.ApplyAll(sieveModel, result); // Returns `result` after applying the sort/filter/page query in `SieveModel` to it
|
result = _sieveProcessor.Apply(sieveModel, result); // Returns `result` after applying the sort/filter/page query in `SieveModel` to it
|
||||||
return Json(result.ToList());
|
return Json(result.ToList());
|
||||||
}
|
}
|
||||||
```
|
```
|
||||||
There are also `ApplySorting`, `ApplyFiltering`, and `ApplyPagination` methods.
|
You can also explicitly specify if only filtering, sorting, and/or pagination should be applied via optional arguments.
|
||||||
|
|
||||||
### 4. Send a request
|
### 4. Send a request
|
||||||
|
|
||||||
@ -187,8 +187,5 @@ You can find an example project incorporating most Sieve concepts in [SieveTests
|
|||||||
* Instead of just removing commas from `{Value}`s, [you'll also need to remove brackets and pipes](#send-a-request)
|
* Instead of just removing commas from `{Value}`s, [you'll also need to remove brackets and pipes](#send-a-request)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
## License & Contributing
|
## License & Contributing
|
||||||
Sieve is licensed under Apache 2.0. Any contributions highly appreciated!
|
Sieve is licensed under Apache 2.0. Any contributions highly appreciated!
|
||||||
|
Loading…
Reference in New Issue
Block a user