Filtering
AutoFilterer aims to keep strong type models and just removes complicated algorithms.
Showcase
[HttpGet]
public IActionResult Get([FromQuery]BookFilter filter)
{
var result = db.Books.ApplyFilter(filter).ToList();
return Ok(result);
}
Implementation
You just need to create a Filter object that includes properties which is able to filter.
public class BookFilter : FilterBase // <-- Just inherit FilterBase
{
public string Title { get; set; }
public string Author { get; set; }
public int? Year { get; set; } // <-- ValueTypes must be nullable
// ...
// Only written properties can be filterable
}
TODO: Move following topics here:
Filtering · enisn/AutoFilterer Wiki (github.com)
Array Search · enisn/AutoFilterer Wiki (github.com)
Advanced Queries · enisn/AutoFilterer Wiki (github.com)
Operator Comparisons · enisn/AutoFilterer Wiki (github.com)
String Comparisons · enisn/AutoFilterer Wiki (github.com)
OperatorComparison · enisn/AutoFilterer Wiki (github.com)
OperatorFilter · enisn/AutoFilterer Wiki (github.com)