A hybrid ORM library for .NET.
This release has included the updates to fix the Memory Leak issue of the MDS 5.0.1 (see https://github.com/dotnet/SqlClient/issues/1810). It also contains some of the minor bug fixes.
DynamicHandler()
method into the IDbSetting interface.System.DataTable
object using the BinaryBulkImport, when an Enum-based property is present.Microsoft.Data.SqlClient
package v5.1.0
.Npgsql
package to v7.0.2
.MySql.Data
package to 8.0.32.1
.MySqlConnector
package to 2.2.5
.Microsoft.Data.Sqlite
package to v7.0.4
.Thank you to all the contributors/pull-requestors and collaborators of this release (filing the Issues/Bugs, Questions, Recommendations, Verification/Validations, etc).
SkipQuery
(https://github.com/mikependon/RepoDB/issues/377)For the other unlisted collaborators who made the contributions (i.e.: posting and answering comments) on the User Stories, and also to those who directly collaborated with our communities (in many ways), we are also extending our thanks to you.
Please continue to do so and many thanks!
This release has included the long-awaited new Tracing capabilities, enablement of the Async Caching, Global Configurations and many more (i.e.: Bug Fixes, Enhancements, Community PRs and Requests).
Type
property from the DirectionalQueryField object.System.TimeSpan
and System.Int64
. #1033
DBType
#1053
fields
and cacheItemExpiration
as arguments to the QueryMultiple operation #1071
includeMappings
argument from the PropertyInfo.GetPropertyValueAttributes()
, PropertyValueAttributeCache and PropertyValueAttributeResolver methods.Async
methods to the ICache interface #1080
Async
methods? #945
NullToDbNull
method into the Converter class.Microsoft.Data.SqlClient
package to v5.0.1
.Thank you to all the collaborators of this release (filing the Issues/Bugs, Questions, Recommendations, Verification/Validations, etc).
For the other unlisted collaborators who made the contributions (i.e.: posting and answering comments) on the User Stories, and also to those who directly collaborated with our communities (in many ways), we are also extending our thanks to you.
Please continue to do so and many thanks!
This release has included the recent bug fixes, enhancements, community pull-requests, requests and upgrades.
Thank you to our contributors and to all the collaborators.
For our active collaborators on this release:
For the other collaborators of this release (filing the Issues/Bugs, Questions, Recommendations, Verification/Validations, etc)
Please continue to do so and many thanks!
DataEntityExtension.GetSchema(string)
. Use the DataEntityExtension.GetSchema(string, IDbSetting)
instead.DataEntityExtension.GetTableName(string)
. Use the DataEntityExtension.GetTableName(string, IDbSetting)
instead.Type.GetImplementedInterfaces()
(extended method). Use the Type.GetInterfaces()
instead.System.Linq.Async
package to v6.1.0
.DbParameterExtension
class to compliment the compiler's needs for the NpgsqlParameter.NpgsqlDbType.Unknown
.RepoDb.PostgreSql.BulkOperations
package.System.Linq.Async
package to v5.1.0
.Microsoft.Bcl.AsyncInterfaces
package to v6.0.0
.Title
and PackageTags
tags in the Nuget Package (.nuspec references)..NET v6.0
.QueryBuilders
.RepoDb
package v1.12.10
.Microsoft.Data.SqlClient
package v4.0.1
.Title
and PackageTags
tags in the Nuget Package (.nuspec references).System.Data.SqlClient
reference from RepoDB.SqlServer #857 - (BREAKING CHANGES)
MicrosoftSqlServerTypeMapAttribute
and SystemSqlServerTypeMapAttribute
attributes. Use the the SqlDbTypeAttribute attribute instead..NET v6.0
.RepoDb
package v1.12.10
.RepoDb.SqlServer
package v1.1.5
.System.Linq.Async
package to v6.1.0
.Microsoft.Bcl.AsyncInterfaces
(version 6.0.0
).IAsyncEnumerable
interface.Title
and PackageTags
tags in the Nuget Package (.nuspec references).RepoDb
package v1.12.10
.Npgsql
package to v6.0.3
.Npgsql
package. Used the v5.0.11
for FTM netcoreapp2.0
and v6.0.0
for FTM net5.0
and net6.0
..NET v6.0
.RepoDb.PostgreSql.BulkOperations
package.Title
and PackageTags
tags in the Nuget Package (.nuspec references).DbParameterExtension
class to compliment the compiler's needs for the NpgsqlParameter.NpgsqlDbType.Unknown
.Npgsql
package to v6.0.1
.ClientTypeToNpgsqlDbTypeResolver
class.PostgreSqlDbTypeNameToNpgsqlDbTypeResolver
class.RepoDb
package v1.12.10
.Npgsql
package. Used the v5.0.11
for FTM netcoreapp2.0
and v6.0.0
for FTM net5.0
and net6.0
..NET v6.0
.RepoDb.PostgreSql.BulkOperations
package.Title
and PackageTags
tags in the Nuget Package (.nuspec references).DbParameterExtension
class to compliment the compiler's needs for the NpgsqlParameter.NpgsqlDbType.Unknown
.Npgsql
package to v6.0.1
.ClientTypeToNpgsqlDbTypeResolver
class.PostgreSqlDbTypeNameToNpgsqlDbTypeResolver
class.RepoDb
package v1.12.10
.Microsoft.Data.Sqlite
to v6.0.2
..NET v6.0
.Title
and PackageTags
tags in the Nuget Package (.nuspec references).Microsoft.Data.Sqlite
to v6.0.1
.RepoDb
package v1.12.10
..NET v6.0
.Title
and PackageTags
tags in the Nuget Package (.nuspec references).System.Data.SQLite.Core
package to v1.0.115.5
.MySql.Data
package to 8.0.28
..NET v6.0
.Title
and PackageTags
tags in the Nuget Package (.nuspec references).RepoDb
package v1.12.10
.This release has included the recent bug fixes, enhancements, community pull-requests, requests and upgrades.
Thank you to our contributors and to all the collaborators.
@SergerGood - Sergei Khlebnikov - special thanks to you man ๐ ๐๐ผโโ๏ธ
@orthoxerox
For our active collaborators on this release:
For the other collaborators of this release (filing the Issues/Bugs, Questions, Recommendations, Verification/Validations, etc)
Please continue to do so and many thanks!
Microsoft.Bcl.AsyncInterfaces v5.0.0
package.Microsoft.Bcl.HashCode v1.1.1
package.System.Linq.Async v5.0.0
package.net5.0
as part of the target frameworks.Dictionary<string, object>
is failing #791.IsDictionaryStringObject()
does not work in F# #789.Size
exception #836.NullReferenceException
if not properly initialized. #861.Size
property into the DirectionalQueryField object.Type
property of the DirectionalQueryField object.NULL
comparer as part of the qualifiers on the MergeAll, UpdateAll, BulkMerge and BulkUpdate operations.CreateConnection()
method of the BaseRepository class virtual.DbParameter
object. #886
PropertyValueAttributes()
method on the FluentMapper class.net5.0
as part of the target frameworks.RepoDb
package to v1.12.8-beta5
.System.Data.SqlClient
package to v4.8.3
.DbParameter
object. #886
net5.0
as part of the target frameworks.RepoDb
package to v1.12.8-beta5
.RepoDb.SqlServer
package to v1.1.4-beta4
.hints
argument is removed from the BulkInsert via DbDataReader
.WriteToServer
method to cater the ordered resultset of the __RepoDb_OrderColumn
custom column.net5.0
as part of the target frameworks.RepoDb
package to v1.12.8-beta5
.Npgsql
package to v5.0.10
.PostgreSqlDbSetting
to RepoDb.DbSettings
namespace.DbParameter
object. #886
RepoDb
package to v1.12.8-beta5
.Microsoft.Data.Sqlite
package to v5.0.10
.System.Data.SQLite.Core
package to v1.0.115
.net5.0
as part of the target frameworks.AUTOINCREMENT
not recognized #802
DbParameter
object. #886
net5.0
as part of the target frameworks.RepoDb
package to v1.12.8-beta5
.MySqlDbSetting
to RepoDb.DbSettings
namespace.DbParameter
object. #886
MySqlConnector
package to v1.3.12
.RepoDb
package to v1.12.8-beta5
.net5.0
as part of the target frameworks.MySqlConnectorDbSetting
to RepoDb.DbSettings
namespace.DbParameter
object. #886
This release has included the recent bug fixes, enhancements, community pull-requests, requests and upgrades.
Thank you to our contributors and to all the collaborators.
For our active collaborators on this release:
For the other collaborators of this release (filing the Issues/Bugs, Questions, Recommendations, Verification/Validations, etc)
Please continue to do so and many thanks!
Reset()
method into the Parameter object. #709
DbParameter
into the QueryField object. #711
hints
argument is removed from the BulkInsert via DbDataReader
.WriteToServer
method to cater the ordered resultset of the __RepoDb_OrderColumn
custom column.This release has included the complete support to the dynamic objects (i.e.: ExpandoObject
and IDictionary<string, object>
).
Thank you to our contributors and to all the collaborators.
TypeExtension.IsPlainType
seems to misjudge the string propertyDateTime
to String
.propertyHandler
. ๐ This is awesome!
For our active collaborators on this release:
For the other collaborators of this release (filing the Issues/Bugs, Questions, Recommendations, Verification/Validations, etc)
Please continue to do so and many thanks!
Dictionary<string, string>
#647
Microsoft.Data.SqlClient
to v2.1.0
.System.ComponentModel.Annotations
to v5.0.0
.TPropertyHandler
has implemented the IPropertyHandler interface when calling the Add()
method of the PropertyHandlerCache object.ExpandoObject
in Insert via TableName
. #234
ExpandoObject
in Merge via TableName
. #238
ExpandoObject
in Update via TableName
. #236
ExpandoObject
in InsertAll via TableName
. #235
ExpandoObject
in MergeAll via TableName
. #239
ExpandoObject
in UpdateAll via TableName
. #237
ExpandoObject
in BulkInsert #610
ExpandoObject
in BulkMerge #611
ExpandoObject
in BulkUpdate #612
ExpandoObject
in BulkDelete #613
WITH
BulkMergeAsync #640
This release as supported the CancellationToken as a response to #343. It affects all the supported different DB Provider packages.
Thank you @SergerGood for opening and pushing this feature for us to work with.
This release is the more stable and more mature than the original v1.12.0. Various issues and requests has been pushed on the last minor releases.
DbDataReader.ReadAsync
method (in v1.12.0 to v1.12.2) #601
NullReferenceException
Is Thrown for NULL Query Expression #600
The version 1.12.0 / v1.1.0 (extensions) are one of the biggest release of RepoDB. It contains the various updates (i.e. Features, Capabilities, and Request from the Community).
fields
argumentThank you to our contributors and to all the collaborators.
fields
argument in the BatchQuery, Query, Insert, Merge and Update operations (and all its Batch operations). #523
tableName
parameter. #521 - BREAKING
Query<TEntity>
#545
Identity
field if the Primary
field is not available during the Query, Delete and Update operations.IsNullOrEmpty
to IsNullOrWhiteSpace
.ToLower()
to ToLowerInvariant()
.string.Equals(value1, value2, StringComparer.OrdinalIgnoreCase)
.Async
methods in the compiler. #482 #477
whereOrPrimaryKey
argument to what
to extend the support to both (data entity object, dynamic/object expression, primary key and identity key), to further support the F#
community. BREAKING
Parse
method of the QueryField and QueryGroup objects.IEnumerable<ExpandoObject>
instead of IEnumerable<dynamics>
. #540
IDictionary<string, object>
instead of ExpandoObject. #537
IsAssignableFrom
can be used over the customized IsInterfacedTo
. #469
cacheItemExpiration
arguments nullable. BREAKING
CacheItemExpiration
property nullable.CacheItemExpiration
property nullable.NonKeyedTable
.DbType
Map Attribute (includes SQL Server, PostgreSQL and MySQL).KeyFieldNotFoundException
, MissingQualifierFieldsException
and the IdentityFieldNotFoundException
.<TEntity>(TableName)
methods to the BatchQuery operation.<TEntity>(TableName)
methods to the Query and QueryAll operations.<TEntity>(TableName)
methods to the Delete and DeleteAll operations.<TEntity>(TableName)
methods to the Insert and InsertAll operations.<TEntity>(TableName)
methods to the Merge and MergeAll operations.<TEntity>(TableName)
methods to the Update and UpdateAll operations.<TEntity, TResult>
methods to the Average and AverageAll operations.<TEntity, TResult>
methods to the Max and MaxAll operations.<TEntity, TResult>
methods to the Min and MinAll operations.<TEntity, TResult>
methods to the Sum and SumAll operations.fields
argument to the fetch (i.e.: Query, ExecuteQuery and BatchQuery) and push (i.e.: Insert, Merge and Update) operations.tableName
argument to all entity based operations. This completely resolves the F#
anonymous invocations.whereOrPrimaryKey
to what
.fields
argument to the fetch (i.e.: Query, ExecuteQuery and BatchQuery) and push (i.e.: Insert, Merge and Update) operations.tableName
argument to all entity based operations. This completely resolves the F#
anonymous invocations.whereOrPrimaryKey
to what
.INSERT OR REPLACE
with INSERT/UPDATE
statement. #558
fields
argument to the fetch (i.e.: Query, ExecuteQuery and BatchQuery) and push (i.e.: Insert, Merge and Update) operations.tableName
argument to all entity based operations. This completely resolves the F#
anonymous invocations.whereOrPrimaryKey
to what
.fields
argument to the fetch (i.e.: Query, ExecuteQuery and BatchQuery) and push (i.e.: Insert, Merge and Update) operations.tableName
argument to all entity based operations. This completely resolves the F#
anonymous invocations.whereOrPrimaryKey
to what
.fields
argument to the fetch (i.e.: Query, ExecuteQuery and BatchQuery) and push (i.e.: Insert, Merge and Update) operations.tableName
argument to all entity based operations. This completely resolves the F#
anonymous invocations.whereOrPrimaryKey
to what
.RESTART IDENTITY
in the Truncate operation. #563
This release comes with a blog that can be found here.