EF Core 8 (EF8) RC 2
Pre-release
Pre-release
rbhanda
released this
10 Oct 19:06
·
510 commits
to release/8.0
since this release
EF Core 8 (EF8) RC 2 is available from NuGet
RC 2 contains no new features over those shipped in RC 1, which includes:
- Allow Multi-region or Application Preferred Regions in EF Core Cosmos
- Use C# structs or classes as value objects
- Support primitive collections in the compiled model
- Migrations and model snapshot for primitive collections
- Query: add support for projecting JSON entities that have been composed on
- SQLite: Add EF.Functions.Unhex
- Add type mapping APIs to customize JSON value serialization/deserialization
- SQL Server Index options SortInTempDB and DataCompression
- Analyzer: warn (and code fix) for use of interpolation in SQL methods accepting raw strings
- Translate Contains to IN with subquery instead of EXISTS where relevant
- Allow inline primitive collections with parameters, translating to VALUES
- Translate DateOnly.FromDateTime
- Implement JSON serialization/deserialization via Utf8JsonReader/Utf8JsonWriter
- Update pattern for scaffolding column default constraints
- Use IN instead of EXISTS with ExecuteDelete and entity containment
- Allow ExecuteUpdate to update properties of multiple queries as long as the map to a single table
- Query: add support for projecting primitive collections from JSON entities
- Switch to storing enums as ints in JSON instead of strings
- Translate DegreesToRadians
- Metadata and type mapping support for primitive collections
- JSON type representations and conversions to store types
- Allow stripping away all model building code to reduce application size
- Json: add support for collection of primitive types inside JSON columns
- Support LINQ querying of non-primitive collections within JSON
- SQLite RevEng: Sample data to determine CLR type
- Allow default value check in value generation to be customized
- Update handling of non-nullable store-generated properties
- IN() list queries are not parameterized, causing increased SQL Server CPU usage
- Allow 'unsharing' connection between contexts
- Remove unneeded subquery and projection when using ordering without limit/offset in set operations
- Make SequentialGuidValueGenerator non-allocating
- Support querying over primitive collections
- JSON/Sqlite: use -> and ->> where possible when traversing JSON, rather than json_extract
- Add Generic version of EntityTypeConfiguration Attribute
- NativeAOT/trimming compatibility for Microsoft.Data.Sqlite
- Map collections of primitive types to JSON column in relational database
- Translate DateTimeOffset.ToUnixTime(Seconds|Milliseconds)
- Allow pooling DbContext with singleton services
- Optional RestartSequenceOperation.StartValue
- Generate compiled relational model
- Global query filters produce too many parameters
- Optimize update path for single property JSON element
- JSON columns can be used in compiled models
- Unneeded parentheses removed in SQL queries
- Set operations are supported over non-entity projections with different facets
- Json: add support for Sqlite provider
- SQL Server: Support hierarchyid
- Configuration to opt out of occasionally problematic SaveChanges optimizations
- Add convention types for triggers
- Translate element access of a JSON array
- Raw SQL queries for unmapped types
- Support the new BCL DateOnly and TimeOnly structs for SQL Server
- Translate ElementAt(OrDefault)
- Opt-out of lazy-loading for specific navigations
- Lazy-loading for no-tracking queries
- Reverse engineer Synapse and Dynamics 365 TDS
- Set MaxLength on TPH discriminator property by convention
- Translate ToString() on a string column
- Generic overload of ConventionSetBuilder.Remove
- Lookup tracked entities by primary key, alternate key, or foreign key
- Allow UseSequence and HiLo on non-key properties
- Pass query tracking behavior to materialization interceptor
- Use case-insensitive string key comparisons on SQL Server
- Allow value converters to change the DbType
- Resolve application services in EF services
- Numeric rowersion properties automatically convert to binary
- Allow transfer of ownership of DbConnection from application to DbContext
- Provide more information when 'No DbContext was found' error is generated
See GitHub for all issues resolved in Preview 1, Preview 2, Preview 3, Preview 4, Preview 5, Preview 6, Preview 7, RC 1), and RC 2.