dotnet tool restore
dotnet csharpier format .Set "JsonApiToolkit": "Debug" in appsettings.json to enable detailed query processing logs.
- JSON column detection: Collections and complex objects without an
Idproperty are mapped as JSON attributes, not relationships. This handles EF Core owned entities stored as JSON columns. - Pagination clamping: Invalid page numbers are silently clamped (negative/zero -> page 1, overflow -> last page).
- Malformed query params: Bad filter/sort/include syntax is logged and skipped, not thrown as exceptions.
- Filtered includes: Dot notation in filters (e.g.
filter[author.name]=John) applies to included resources wheninclude=authoris also set. - Include allowlisting:
AllowedIncludesAttributeon controller actions restricts which relationships can be requested viainclude=, preventing unauthorized data exposure. - Sparse fieldsets:
fields[type]=field1,field2works for both primary and included resources.idandtypeare always returned.