-
Notifications
You must be signed in to change notification settings - Fork 3.2k
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
Metadata and type mapping support for primitive collections #30730
Comments
Related - #17471 |
Think specifically about precedence of primitive collections and value converters: if the provider's FindMapping returns primitive collections (as it currently does in #30738), these will override any value converters. If we have any built-in value converters from IEnumerable types, these would be overridden by the new support; but I'm not sure we have any. Note that byte[] specifically isn't affected, since relational providers already map it as a regular type (so before we even attempt to map it as a collection). The same happens obviously with string which is also IEnumerable. /cc @ajcvickers |
Mostly completes dotnet#30724, except for full type inference is blocking on dotnet#30730.
Mostly completes dotnet#30724, except for full type inference is blocking on dotnet#30730.
Mostly completes dotnet#30724, except for full type inference is blocking on dotnet#30730.
Mostly completes dotnet#30724, except for full type inference is blocking on dotnet#30730.
Mostly completes dotnet#30724, except for full type inference is blocking on dotnet#30730.
Mostly completes dotnet#30724, except for full type inference is blocking on dotnet#30730.
Test value converters on the element type mapping, e.g. allowing mapping |
Part of #30730 - Type mappings now have a `JsonValueReaderWriter` that handles reading and writing JSON for the type. - This can be overridden by a `JsonValueReaderWriter` on a property, for example, to allow GeoJson to be written instead of WKT. - These are typically singleton instances, and can be optimized out for well-known cases. - If the type mapping has a converter, then the converter must be applied to the value before being written to JSON, and the converter must be applied after reading the JSON value. - If the property itself has a `JsonValueReaderWriter`, then the unconverted property value is passed to this reader/writer.
Part of #30730 - Type mappings now have a `JsonValueReaderWriter` that handles reading and writing JSON for the type. - This can be overridden by a `JsonValueReaderWriter` on a property, for example, to allow GeoJson to be written instead of WKT. - These are typically singleton instances, and can be optimized out for well-known cases. - If the type mapping has a converter, then the converter must be applied to the value before being written to JSON, and the converter must be applied after reading the JSON value. - If the property itself has a `JsonValueReaderWriter`, then the unconverted property value is passed to this reader/writer.
Part of #30730 Some stuff remaining, but wanted to get this out there for initial review. Missing: - ElementType in compiled model - Negative cases - More tests
Part of #30730 Some stuff remaining, but wanted to get this out there for initial review. Missing: - ElementType in compiled model - Negative cases - More tests
Part of #30730 Some stuff remaining, but wanted to get this out there for initial review. Missing: - ElementType in compiled model - Negative cases - More tests
Part of #30730 Some stuff remaining, but wanted to get this out there for initial review. Missing: - ElementType in compiled model - Negative cases - More tests
Part of #30730 Some stuff remaining, but wanted to get this out there for initial review. Missing: - ElementType in compiled model - Negative cases - More tests
Part of #30730 Some stuff remaining, but wanted to get this out there for initial review. Missing: - ElementType in compiled model - Negative cases - More tests Review updates Change builder shape based on API review Updated based on review. More tests and refactoring of how ElementTypes are created.
Part of #30730 Some stuff remaining, but wanted to get this out there for initial review. Missing: - ElementType in compiled model - Negative cases - More tests Review updates Change builder shape based on API review Updated based on review. More tests and refactoring of how ElementTypes are created.
Primitive collection support has been implemented in query, along with basic type mapping support. However, we still need to complete the metadata and type mapping story for this:
See related #30677, which is about add APIs for how JSON serialization and value extraction should happen.
The text was updated successfully, but these errors were encountered: