Releases: PawelGerr/Thinktecture.EntityFrameworkCore
Releases · PawelGerr/Thinktecture.EntityFrameworkCore
4.2.3
4.2.2
4.2.1
4.2.0
Features:
- Automatic configuration of temp tables and collection parameters for primitive types can be disabled.
- Temp tables and table hints: all limitations regarding SplittingBehavior and OwnedTypes are lifted.
Changes:
- Collection parameters: by default, the collections is serialized immediately instead of deferred (configurable). This should be the expected behavior, because I can't image why I would create a parameter, then modify the underlying (in-memory-)collection and in the end execute the query expecting it has the last modifications. And there is a regression in 6.0.2 (dotnet/efcore#27427)
4.1.0
Features:
- Added extension method for DbContextOptionsBuilder to remove conventions.
- Added generic overload for ConfigureStringBuilderPool
Changes:
- Moved IPrimaryKeyPropertiesProvider to their own files and moved the singletons to IPrimaryKeyPropertiesProvider for better IntelliSense support. PrimaryKeyPropertiesProviders is not obsolete.
- Temp table for nullable primitive types are registered as well.
- Convention registers scalar collection parameters for nullable structs as well
- OpenJson should be strict to prevent buggy behavior
4.0.0
Features:
- Added "collection parameters" as a light-weight alternative to temp tables. This feature allows to use a collection of scalar values or complex objects as a SQL parameter (SQL Server only)
- The "update" part is skipped in
BulkInsertOrUpdateAsync
ifPropertiesToUpdate
returns explicitly 0 properties. (allows update-if-not-exists) - Schema changing components support temporal tables
- Added an extension method that changes the default
ValueComparer
so the comparison is done via reference equality. Useful forbyte[]
. - Split the base classes for integration testing in 2 so the
DbContexts
are accessible without inheriting from a base class.
Changes:
BulkInsertValuesIntoTempTableAsync
with 1 column is returning just the values instead of entities.- Temp tables are not supported in queries with QuerySplittingBehavior
SplitQuery
- Temp tables are now "named entities" to prevent clashes with real entities and the "collection parameters". Changed the configuration-methods.
- Temp tables for primitive types (Guid, Int32, etc) are pre-configured automatically now.
- Removed obsolete
NewGuidTempTableNameProvider
- Moved factory methods from
EntityPropertiesProviders
toIEntityPropertiesProvider
for better IntelliSense support.EntityPropertiesProviders
is now obsolete. - Caching of
ILoggerFactory
during testing is not required anymore.
Bugfixes and performance optimizations.