Skip to content

Releases: DataObjects-NET/dataobjects-net

6.0.6

24 May 14:19

Choose a tag to compare

  • [main] Obsolete CompilerContainerAttribute.ExtensionType property is removed
  • [main] Obsolete BuildingContext.Current and BuildingContext.Demand() are removed
  • [main] Obsolete DomainConfiguration.DefaultSectionName field is removed
  • [main] Obsolete IOperationSection.Replay() and its implementations are removed
  • [main] Obsolete OperationCapturer.Attach(IOperationLogger) is removed
  • [main] Obsolete ProviderFeatures.SingleSessionAccess and ServerFeatures.SingleSessionAccess are removed
  • [main] Obsolete DomainUpgradeModeExtensions.RequiresInitializingStage() is removed
  • [main] Obsolete UpgradeContext.OriginalConfiguration property is removed
  • [main] Obsolete UpgradeStage.Initializing is removed
  • [main] Obsolete parameterless constructor of RegexConstraint is removed
  • [main] Obsolete PropertyValidator.Mode property is removed
  • [main] Obsolete ConstraintMode type is removed
  • [main] Obsolete EntityExtensions.IsRemoved() is removed
  • [main] Obsolete QueryableExtensions.Remove() is removed
  • [main] Obsolete Transaction.Open() methods are removed
  • [main] Obsolete TransactionalExtensions.InvokeTransactionally() methods are removed
  • [main] Obsolete TypeExtensions.GetTypeInfo() methods are removed
  • [main] Obsolete VersionCapturer.Attach() is removed
  • [main] Obsolete VersionValidator.Attach() property is removed
  • [main] Obsolete WellKnown class members are removed
  • [main] Obsolete ServerFeatures property is removed
  • [main] Fixed possible cases of broken serialization due to comparers
  • [main] Fixed rare cases of insert wrong data into some table columns for SingleTable hierarchies
  • [main] Exception message about unsupported by storage type became more informative
  • [firebird] Another error code that means unique contraint violation is treated correctly
  • [firebird] Improved formatting for Float and Double constants within queries
  • [firebird] Improved work with DateTime query parameters
  • [firebird] Fixed columns' default value extraction
  • [mysql] Another error code that means unique contraint violation is treated correctly
  • [mysql] Fixed DateTime.DayOfWeek translation
  • [oracle] Changed NULLs ordering settings. Now order is the same as in .NET
  • [oracle] Improved resolution of TimeSpan literal values on translation
  • [oracle] Starting from v11 schema names don't have to be in upper-case as storage allowes names in any case
  • [oracle] Improved translation of Math.Ceiling(), Math.Truncate() and Math.Floor()
  • [oracle] Fixed byte array fields comparison translation e.g. in Where statements
  • [oracle] Improved translation of DateTimeOffset's LocalDateTime, ToLocalTime() and ToUniversalTime() members
  • [postgresql] Improved performance of First(), FirstOrDefault() being subqueries
  • [postgresql] Improved translation of Math.Ceiling(), Math.Truncate() and Math.Floor() methods
  • [postgresql] Skip Commit/Rollback operations for already completed transaction to prevent exception overlaping
  • [sqlite] Fixed some foreign key extraction issues
  • [sqlite] Improved work with DateTime query parameters
  • [sqlserver] Fixed incorrect DateTimeOffset.Date part extraction
  • [sqlserver] Improved translation of DateTimeOffset's LocalDateTime and TimeOfDay members
  • [reprocessing] ExecuteActionStrategy.Execute doesn't get external session though Session.Current at all
  • [reprocessing] Introduced DomainExtension.WithSession() and IExecuteConfiguration.WithSession() methods to pass external session

6.0.5

09 Mar 15:20

Choose a tag to compare

  • [main] EntitySet.Prefetch() now re-fetches items in Client profile and in certain transaction isolation levels
  • [main] Prefetch extension re-fetches EntitySet items in Client profile and in certain transaction isolation levels
  • [main] SessionScope is not derrived from Scope but stand alone class. Functionality remains the same.
  • [main] Improved session activation mechanism to work with asynchronous Session opening
  • [main] Fixed SimpleCommandProcessor internal command allocation issue which caused 'swollowing' of genuin exception
  • [main] Fixed certain cases of incorrect temporary table column structure while using grouping
  • [main] Correct command disposal by CommandProcessors
  • [mysql] Updated client library package
  • [log4net] Updated log4net package

6.0.4

22 Dec 13:28

Choose a tag to compare

  • [main] Session.SelectStorageNode() marked as obsolete
  • [main] Removed obsolete static Session.Open() methods
  • [main] Domain.OpenSessionAsync() methods can only open a session to default storage node now
  • [main] Introduced StorageNode.OpenSession() and StorageNode.OpenSessionAsync() method sets to open sessions to the node
  • [main] Fixed issue when DirectPersistentAccessor.SetReferenceKey() was unable to set reference for saved Entities
  • [main] Hints which path became irrelevant during upgrade actions generation no longer cause error
  • [main] Fixed certain translation issues of interface members usage for non-perstent types initialization within queries
  • [main] Improved translation of certain subqueries used in LINQ
  • [main] Ported changes of DO 5.0 which were missing (from 5.0.18 up to 5.0.21)
  • [postgresql] Retuned support for DateTimeOffsets
  • [postgresql] Fixed issue when certain DateTimeOffsets operations result couldn't be used for parts extraction e.g. TotalMilliseconds
  • [bulkoperations] Addressed wrong table alias assignment issue for Bulk Update and Bulk Delete

6.0.3

29 Sep 12:08

Choose a tag to compare

  • [main] Provider for MS SQL Server was branched out into a separate project
  • [main] Events for changes cancelling ported from 5.0.x
  • [main] QueryCommand now implements IDisposable interface
  • [main] TupleDescriptor no longer implements IList
  • [main] TupleDescriptor.GetCommonPartLength(TupleDescriptor) method was removed
  • [main] TupleDescriptor.IsValueType(int) method was removed
  • [main] KeyExpression.KeyFields property changed its return type from ReadOnlyCollection to IReadOnlyList
  • [main] One of the TupleExtensions.CopyTo() methods changed 'map' parameter type from int[] to IReadOnlyList
  • [main] WrappingTransformTupleBase.Arguments property changed the return type from object[] to IReadOnlyList
  • [main] TransformedTuple.Arguments property changed the return type from object[] to IReadOnlyList
  • [main] MapTransform.SingleSourceMap and MapTransform.SingleSourceMap properties changed the return type from int[] to IReadOnlyList
  • [main] Intoduced protected MapTransform.SetMap() and MapTransform.SetSingleSourceMap() methods to set correspoding properties value
  • [main] One of the MapTransform constructors changed its 'map' parameter type from int[] to IReadOnlyList
  • [main] CutInTransform.Sources property changed the return type from TupleDescriptor[] to IReadOnlyList
  • [main] CombineTransform.Sources property changed the return type from TupleDescriptor[] to IReadOnlyList
  • [main] SelectProvider.ColumnIndexes property changed the return type from int[] to IReadOnlyList
  • [main] IncludeProvider.FilteredColumns property changed the return type from int[] to IReadOnlyList
  • [main] Introduced ListExtensions.IndexOf(this IReadOnlyList, T item) extensions method
  • [main] ComparisonRules.Composite property changed its return type from ComparisonRules[] to IReadOnlyList
  • [main] Constructors of SelectProvider and IncludeProvider changed type of some of their parameters from int[] to IReadOnlyList
  • [main] ArrayExtensions.Copy() methods marked [Obsolete] and will be removed in future
  • [main] Segment struct became readonly
  • [main] SqlConnection was extended with abstract ClearUnderlyingConnection method
  • [main] BindingCollection<TKey, TValue> now implements IReadOnlyCollection<KeyValuePair<TKey, TValue>> instead of IEnumerable<KeyValuePair<TKey, TValue>>
  • [main] Several SqlDml.Join methods changed their signature by using parameters of IReadOnlyList<> inteface instead of IList<> interface
  • [main] General performance and memory usage improvements
  • [main] Query translation performance improvements
  • [main] Materializer can work with non-private members
  • [main] Improved work of In/Contains over local collections with collections of Keys
  • [main] Fixed certain cases when system attribute [OverrideFieldName] may cause problems
  • [main] Fixed concurrency issues
  • [main] Fixed possible corruption EntityChangeRegistry contents
  • [main] Fixed issue when reference synchronization couldn't clear reference of removing entity
  • [main] Fixed issue when field value validation can force lazy-load fields to be fetched
  • [main] Fixed cases when extra SELECT wrapping appeared just because of TypeId constant column
  • [sqlserver] Updated version of referenced System.Data.SqlClient
  • [bulkoperations] Made possible to use Contains() for collections in Bulk operations as well as In()