Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Adds query translation for option types #93

Merged
merged 3 commits into from
May 25, 2021
Merged

Adds query translation for option types #93

merged 3 commits into from
May 25, 2021

Conversation

lucasteles
Copy link
Contributor

@lucasteles lucasteles commented May 22, 2021

Proposed Changes

This pr adds a configuration to EF Core deal with Option types in IQueryiable's

Types of changes

  • Bugfix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to not work as expected)

Checklist

  • Build and tests pass locally
  • I have added tests that prove my fix is effective or that my feature works (if appropriate)
  • I have added necessary documentation (if appropriate)

Fix #92

@simon-reynolds simon-reynolds merged commit 117bc13 into efcore:master May 25, 2021
@simon-reynolds
Copy link
Collaborator

Hi @lucasteles
Thank you so much for this PR, these query translations are great!

simon-reynolds added a commit that referenced this pull request May 27, 2021
## [5.0.3-beta003] - 2021-05-27

### Added
- Query translation for Option types - [@lucasteles](https://github.com/lucasteles) - #93
- DbSet/IQueryable helpers to deal with EF Core async and nullable methods - [@lucasteles](https://github.com/lucasteles) - #94

- Automatic registration of DesignTimeServices - #86
- DbContextHelpers - curried functions for interacting with DbContext to allow for a more 'native' F# experience
[Unreleased]: v5.0.3-alpha10...HEAD
[5.0.3-alpha10]: https://github.com/efcore/EFCore.FSharp/releases/tag/v5.0.3-alpha10
- DbContextHelpers - curried functions for interacting with DbContext to allow for a more 'native' F# experience
[Unreleased]: v5.0.3-beta001...HEAD
[5.0.3-beta001]: https://github.com/efcore/EFCore.FSharp/releases/tag/v5.0.3-beta001
[5.0.3-alpha10]: https://github.com/efcore/EFCore.FSharp/releases/tag/v5.0.3-alpha10
- Automatic registration of DesignTimeServices - #86
- DbContextHelpers - curried functions for interacting with DbContext to allow for a more 'native' F# experience
[Unreleased]: v5.0.3-alpha10...HEAD
[5.0.3-alpha10]: https://github.com/efcore/EFCore.FSharp/releases/tag/v5.0.3-alpha10
- DbContextHelpers - curried functions for interacting with DbContext to allow for a more 'native' F# experience
[Unreleased]: v5.0.3-beta002...HEAD
[5.0.3-beta002]: https://github.com/efcore/EFCore.FSharp/releases/tag/v5.0.3-beta002
[5.0.3-beta001]: https://github.com/efcore/EFCore.FSharp/releases/tag/v5.0.3-beta001
[5.0.3-alpha10]: https://github.com/efcore/EFCore.FSharp/releases/tag/v5.0.3-alpha10

### Fixed
- Improved code generation for contexts scaffolded from an existing database - #89
- Correct issue with InsertData operations and 2D arrays
- Generate valid code in HasData method
- Fix issue with generated DbContext members in scaffolded code
- Resolved issue with migrations have a missing unit arg to the Up method if no changes in model
- Foreign Key constraints now created correctly
- Fix indentation issue when table has constraints - #75
- Constraints now correctly generated - #72
- Generated Migrations will now always include the System namespace - #70
- Correct issue with InsertData operations and 2D arrays
- Generate valid code in HasData method
- Fix issue with generated DbContext members in scaffolded code
- Resolved issue with migrations have a missing unit arg to the Up method if no changes in model
- Foreign Key constraints now created correctly
- Fix indentation issue when table has constraints - #75
- Constraints now correctly generated - #72
- Generated Migrations will now always include the System namespace - #70
- Correct issue with InsertData operations and 2D arrays
- Generate valid code in HasData method
- Fix issue with generated DbContext members in scaffolded code
- Resolved issue with migrations have a missing unit arg to the Up method if no changes in model
- Foreign Key constraints now created correctly
- Fix indentation issue when table has constraints - #75
- Constraints now correctly generated - #72
- Generated Migrations will now always include the System namespace - #70
- Correct issue with InsertData operations and 2D arrays
- Generate valid code in HasData method
- Fix issue with generated DbContext members in scaffolded code
- Resolved issue with migrations have a missing unit arg to the Up method if no changes in model
- Foreign Key constraints now created correctly
- Fix indentation issue when table has constraints - #75
- Constraints now correctly generated - #72
- Generated Migrations will now always include the System namespace - #70
simon-reynolds added a commit that referenced this pull request Jun 16, 2021
## [5.0.3-beta004] - 2021-06-16

### Added
- Single case union support - [@lucasteles](https://github.com/lucasteles) - #98

- Query translation for Option types - [@lucasteles](https://github.com/lucasteles) - #93
- DbSet/IQueryable helpers to deal with EF Core async and nullable methods - [@lucasteles](https://github.com/lucasteles) - #94
- Automatic registration of DesignTimeServices - #86
- DbContextHelpers - curried functions for interacting with DbContext to allow for a more 'native' F# experience
[Unreleased]: v5.0.3-beta002...HEAD
[5.0.3-beta002]: https://github.com/efcore/EFCore.FSharp/releases/tag/v5.0.3-beta002
[5.0.3-beta001]: https://github.com/efcore/EFCore.FSharp/releases/tag/v5.0.3-beta001
- Automatic registration of DesignTimeServices - #86
- DbContextHelpers - curried functions for interacting with DbContext to allow for a more 'native' F# experience
[Unreleased]: v5.0.3-beta001...HEAD
[5.0.3-beta001]: https://github.com/efcore/EFCore.FSharp/releases/tag/v5.0.3-beta001
- Automatic registration of DesignTimeServices - #86
- DbContextHelpers - curried functions for interacting with DbContext to allow for a more 'native' F# experience
[Unreleased]: v5.0.3-alpha10...HEAD
[5.0.3-alpha10]: https://github.com/efcore/EFCore.FSharp/releases/tag/v5.0.3-alpha10

### Fixed
- Issues with scaffolded code

- Improved code generation for contexts scaffolded from an existing database - #89
- Correct issue with InsertData operations and 2D arrays
- Generate valid code in HasData method
- Fix issue with generated DbContext members in scaffolded code
- Resolved issue with migrations have a missing unit arg to the Up method if no changes in model
- Foreign Key constraints now created correctly
- Fix indentation issue when table has constraints - #75
- Constraints now correctly generated - #72
- Generated Migrations will now always include the System namespace - #70
- Improved code generation for contexts scaffolded from an existing database - #89
- Correct issue with InsertData operations and 2D arrays
- Generate valid code in HasData method
- Fix issue with generated DbContext members in scaffolded code
- Resolved issue with migrations have a missing unit arg to the Up method if no changes in model
- Foreign Key constraints now created correctly
- Fix indentation issue when table has constraints - #75
- Constraints now correctly generated - #72
- Generated Migrations will now always include the System namespace - #70
- Correct issue with InsertData operations and 2D arrays
- Generate valid code in HasData method
- Fix issue with generated DbContext members in scaffolded code
- Resolved issue with migrations have a missing unit arg to the Up method if no changes in model
- Foreign Key constraints now created correctly
- Fix indentation issue when table has constraints - #75
- Constraints now correctly generated - #72
- Generated Migrations will now always include the System namespace - #70
simon-reynolds added a commit that referenced this pull request Aug 9, 2021
## [5.0.3-beta005] - 2021-08-09

### Fixed
- Fix formatting of Nullable parameters - [@LiteracyFanatic](https://github.com/LiteracyFanatic) - #106
- Handle nullablility correctly in snapshot generation - #107

- Issues with scaffolded code
- Improved code generation for contexts scaffolded from an existing database - #89
- Correct issue with InsertData operations and 2D arrays
- Generate valid code in HasData method
- Fix issue with generated DbContext members in scaffolded code
- Resolved issue with migrations have a missing unit arg to the Up method if no changes in model
- Foreign Key constraints now created correctly
- Fix indentation issue when table has constraints - #75
- Constraints now correctly generated - #72
- Generated Migrations will now always include the System namespace - #70

### Added
- Single case union support - [@lucasteles](https://github.com/lucasteles) - #98
- Query translation for Option types - [@lucasteles](https://github.com/lucasteles) - #93
- DbSet/IQueryable helpers to deal with EF Core async and nullable methods - [@lucasteles](https://github.com/lucasteles) - #94
- Automatic registration of DesignTimeServices - #86
- DbContextHelpers - curried functions for interacting with DbContext to allow for a more 'native' F# experience
simon-reynolds added a commit that referenced this pull request Aug 17, 2021
## [5.0.3-beta006] - 2021-08-17

### Fixed
- Removed `DevelopmentDependency=true` as it was setting `IncludeAssets` to undesirable values when restoring package - #108

- Fix formatting of Nullable parameters - [@LiteracyFanatic](https://github.com/LiteracyFanatic) - #106
- Handle nullablility correctly in snapshot generation - #107
- Issues with scaffolded code
- Improved code generation for contexts scaffolded from an existing database - #89
- Correct issue with InsertData operations and 2D arrays
- Generate valid code in HasData method
- Fix issue with generated DbContext members in scaffolded code
- Resolved issue with migrations have a missing unit arg to the Up method if no changes in model
- Foreign Key constraints now created correctly
- Fix indentation issue when table has constraints - #75
- Constraints now correctly generated - #72
- Generated Migrations will now always include the System namespace - #70
- Issues with scaffolded code
- Improved code generation for contexts scaffolded from an existing database - #89
- Correct issue with InsertData operations and 2D arrays
- Generate valid code in HasData method
- Fix issue with generated DbContext members in scaffolded code
- Resolved issue with migrations have a missing unit arg to the Up method if no changes in model
- Foreign Key constraints now created correctly
- Fix indentation issue when table has constraints - #75
- Constraints now correctly generated - #72
- Generated Migrations will now always include the System namespace - #70
[Unreleased]: v5.0.3-beta005...HEAD
[5.0.3-beta005]: https://github.com/efcore/EFCore.FSharp/releases/tag/v5.0.3-beta005

### Added
- Single case union support - [@lucasteles](https://github.com/lucasteles) - #98
- Query translation for Option types - [@lucasteles](https://github.com/lucasteles) - #93
- DbSet/IQueryable helpers to deal with EF Core async and nullable methods - [@lucasteles](https://github.com/lucasteles) - #94
- Automatic registration of DesignTimeServices - #86
- DbContextHelpers - curried functions for interacting with DbContext to allow for a more 'native' F# experience
- Single case union support - [@lucasteles](https://github.com/lucasteles) - #98
- Query translation for Option types - [@lucasteles](https://github.com/lucasteles) - #93
- DbSet/IQueryable helpers to deal with EF Core async and nullable methods - [@lucasteles](https://github.com/lucasteles) - #94
- Automatic registration of DesignTimeServices - #86
- DbContextHelpers - curried functions for interacting with DbContext to allow for a more 'native' F# experience
simon-reynolds added a commit that referenced this pull request Oct 16, 2021
## [5.0.3] - 2021-10-16

- Translations for `isNull` to be evaluated in-database - #114

### Fixed
- Removed `DevelopmentDependency=true` as it was setting `IncludeAssets` to undesirable values when restoring package - #108
- Fix formatting of Nullable parameters - [@LiteracyFanatic](https://github.com/LiteracyFanatic) - #106
- Handle nullablility correctly in snapshot generation - #107
- Issues with scaffolded code
- Improved code generation for contexts scaffolded from an existing database - #89
- Correct issue with InsertData operations and 2D arrays
- Generate valid code in HasData method
- Fix issue with generated DbContext members in scaffolded code
- Resolved issue with migrations have a missing unit arg to the Up method if no changes in model
- Foreign Key constraints now created correctly
- Fix indentation issue when table has constraints - #75
- Constraints now correctly generated - #72
- Generated Migrations will now always include the System namespace - #70
- Issues with scaffolded code
- Improved code generation for contexts scaffolded from an existing database - #89
- Correct issue with InsertData operations and 2D arrays
- Generate valid code in HasData method
- Fix issue with generated DbContext members in scaffolded code
- Resolved issue with migrations have a missing unit arg to the Up method if no changes in model
- Foreign Key constraints now created correctly
- Fix indentation issue when table has constraints - #75
- Constraints now correctly generated - #72
- Generated Migrations will now always include the System namespace - #70
[Unreleased]: v5.0.3-beta005...HEAD
[5.0.3-beta005]: https://github.com/efcore/EFCore.FSharp/releases/tag/v5.0.3-beta005

### Added
- Single case union support - [@lucasteles](https://github.com/lucasteles) - #98
- Query translation for Option types - [@lucasteles](https://github.com/lucasteles) - #93
- DbSet/IQueryable helpers to deal with EF Core async and nullable methods - [@lucasteles](https://github.com/lucasteles) - #94
- Automatic registration of DesignTimeServices - #86
- DbContextHelpers - curried functions for interacting with DbContext to allow for a more 'native' F# experience
- Single case union support - [@lucasteles](https://github.com/lucasteles) - #98
- Query translation for Option types - [@lucasteles](https://github.com/lucasteles) - #93
- DbSet/IQueryable helpers to deal with EF Core async and nullable methods - [@lucasteles](https://github.com/lucasteles) - #94
- Automatic registration of DesignTimeServices - #86
- DbContextHelpers - curried functions for interacting with DbContext to allow for a more 'native' F# experience
@xperiandri
Copy link

@lucasteles does it support ValueOption?

@lucasteles
Copy link
Contributor Author

@lucasteles does it support ValueOption?

I don't think so...

Would be necessary to do an almost equal implementation for it

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

Successfully merging this pull request may close these issues.

Filtering by an option column
3 participants