Changes to be able to use multiple datasets in a DbContext #26
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Sometimes it's better to have multiple CTEs with smaller footprint, then have the cross product of all the datasets in one huge CTE.
These changes allow the user to call FromLocalList on the DbContext multiple times, with different model classes (using different table attributes).
The changes were tested on SqlServer.
Just an example:
Let's say you want to find the entry logs of selected employees for given dates and location codes.
You have a set of 500 employee IDs, 30 dates and 5 office location codes. The result dataset would contain 75000 entries in one CTE. Obviously that's too much to have in one query.
With the changes the query would have 3 CTEs with element count of 500, 30 and 5. The result is a much smaller query.