Show / Hide Table of Contents

v6 Migration guide

This article describes breaking changes in .NET Library introduced in version 6.

To migrate to version 6:

  • replace all usings such as NineDigit.eKasa.Core.*, NineDigit.eKasa.Core.Data with single namespace NineDigit.eKasa.
  • class NineDigit.eKasa.Core.Printing.Models.Token has been renamed to NineDigit.eKasa.PrintToken.
  • class NineDigit.eKasa.Helpers.EKasaPathHelper has been renamed to NineDigit.eKasa.EKasaPath.
  • replace CertificateHelper.Create by Certificate.FromXml method.
  • replace IdentityHelper.Create by Identity.FromXml method.

Name and Namespace changes

All namespaces are unified to NineDigit.eKasa, so it is no longer required to use multiple using statements.

List of all renamed classes or changed namespaces can be found in table below:

Original name/namespace (v5) New name/namespace (v6)
Microsoft.EntityFrameworkCore.ForeignKeyConstraintException NineDigit.eKasa.ForeignKeyConstraintException
Microsoft.EntityFrameworkCore.UniqueConstraintException NineDigit.eKasa.UniqueConstraintException
NineDigit.eKasa.Core.Constants.PPEKK* NineDigit.eKasa.Constants.PPEKK.*
NineDigit.eKasa.Core.Data.* NineDigit.eKasa
NineDigit.eKasa.Core.Data.Helpers.TimeZoneHelper NineDigit.eKasa.TimeZoneHelper
NineDigit.eKasa.Core.Data.ORPCodeEqualityComparer NineDigit.eKasa.ORPCode.EqualityComparer
NineDigit.eKasa.Core.Data.Queries.* NineDigit.eKasa.*
NineDigit.eKasa.Core.Data.Records.* NineDigit.eKasa.*
NineDigit.eKasa.Core.Data.Validation.* NineDigit.eKasa.Validation.*
NineDigit.eKasa.Core.Exceptions.* NineDigit.eKasa.*
NineDigit.eKasa.Core.Extensions.* NineDigit.eKasa.*
NineDigit.eKasa.Core.Helpers.DecimalHelper NineDigit.eKasa.DecimalExtensions
NineDigit.eKasa.Core.Helpers.IAsyncLock NineDigit.eKasa.Threading.IAsyncLock
NineDigit.eKasa.Core.Helpers.SecureStringHelper NineDigit.eKasa.SecureStringHelper
NineDigit.eKasa.Core.Helpers.SecureStringHelper.Create(string) NineDigit.eKasa.SecureStringHelper.FromString(string)
NineDigit.eKasa.Core.Helpers.SecureStringHelper.Decrypt(SecureString) NineDigit.eKasa.SecureStringHelper.ToString(SecureString)
NineDigit.eKasa.Core.Helpers.ValidationHelper NineDigit.eKasa.Validation.ValidationHelper
NineDigit.eKasa.Core.Helpers.WaitHandleHelper NineDigit.eKasa.Threading.WaitHandleHelper
NineDigit.eKasa.Core.Printing.* NineDigit.eKasa.*
NineDigit.eKasa.Core.Printing.Models.Token NineDigit.eKasa.PrintToken
NineDigit.eKasa.Core.Printing.PrinterNameEqualityComparer NineDigit.eKasa.Printing.PrinterName.EqualityComparer
NineDigit.eKasa.Core.Resources.ValidationMessages NineDigit.eKasa.Resources.ValidationMessages
NineDigit.eKasa.Core.Services.* NineDigit.eKasa.*
NineDigit.eKasa.Core.Services.IStorageEnumerator NineDigit.eKasa.Storage.IStorageEnumerator
NineDigit.eKasa.Core.Validation.* NineDigit.eKasa.Validation.*
NineDigit.eKasa.Core.Validation.Extensions.IValidatorExtensions NineDigit.eKasa.Validation.IValidatorExtensions
NineDigit.eKasa.Core.Validation.Helpers.Validator NineDigit.eKasa.Validation.Validator
NineDigit.eKasa.Factories.CertificateHelper.Create(Stream, SecureString) NineDigit.eKasa.Certificate.FromXml(Stream, SecureString)
NineDigit.eKasa.Factories.CertificateHelper.Create(string, SecureString) NineDigit.eKasa.Certificate.FromXml(string, SecureString)
NineDigit.eKasa.Factories.IdentityHelper.Create(Stream, bool) NineDigit.eKasa.Identity.FromXml(Stream, bool)
NineDigit.eKasa.Factories.IdentityHelper.Create(string, bool) NineDigit.eKasa.Identity.FromXml(string, bool)
NineDigit.eKasa.Helpers.EKasaPathHelper NineDigit.eKasa.EKasaPath
NineDigit.eKasa.Infrastructure.Storage.Verification.Exceptions.StorageVerificationException NineDigit.eKasa.Storage.Verification.StorageVerificationException
NineDigit.eKasa.Storage.Indexing.Exceptions.IndexTableIntegrityException NineDigit.eKasa.Storage.Indexing.IndexTableIntegrityException
NineDigit.eKasaClient.Exceptions.EKasaFaultException NineDigit.eKasaClient.EKasaFaultException
NineDigit.eKasaClient.Exceptions.EKasaRegistrationException NineDigit.eKasaClient.EKasaRegistrationException
System.IDeepCloneable NineDigit.eKasa.IDeepCloneable
System.IDeepCloneable<T> NineDigit.eKasa.IDeepCloneable<T>

Internalized classes

Access modifiers was changed to internal for all classes, that are not intended for public use.

List of affected classes:

  • NineDigit.eKasa.Application.Domain.IReadOnlyRegisterTokenQueue
  • NineDigit.eKasa.Core.Data.Comparers.ReferenceEqualityComparer
  • NineDigit.eKasa.Core.Data.Comparers.RegistrationRequestDataEqualityComparer
  • NineDigit.eKasa.Core.Data.RegisterReceiptResult.Create(ReceiptRegistrationRequest, IEKasaClientResponse<ReceiptRegistrationResult>)
  • NineDigit.eKasa.Core.Data.SubmitAsyncHandler(RegistrationRequest, CancellationToken)
  • NineDigit.eKasa.Core.Data.SubmitAsyncHandler<TRequest, TResult>(TRequest, CancellationToken)
  • NineDigit.eKasa.Core.Extensions.IInternetConnectivityMonitorExtensions
  • NineDigit.eKasa.Core.Extensions.ReceiptRegistrationRequestReceiptExtensions
  • NineDigit.eKasa.Core.Extensions.RegisterRequestStateExtensions
  • NineDigit.eKasa.Core.Helpers.CryptoHelper
  • NineDigit.eKasa.Core.Helpers.DateTimeHelper
  • NineDigit.eKasa.Core.Helpers.DateTimeOffsetHelper
  • NineDigit.eKasa.Core.Helpers.SecureStringHelper.Decrypt(SecureString, Action<string>)
  • NineDigit.eKasa.Core.Helpers.SecureStringHelper.Decrypt<T>(SecureString, Action<string, T>)
  • NineDigit.eKasa.Core.Helpers.TimeoutHelper
  • NineDigit.eKasa.Core.IEKasaClient
  • NineDigit.eKasa.Core.IEKasaClientRequest
  • NineDigit.eKasa.Core.IEKasaClientRequest<TResult>
  • NineDigit.eKasa.Core.IEKasaClientResponse
  • NineDigit.eKasa.Core.IEKasaClientResponse<TResult>
  • NineDigit.eKasa.Core.IEKasaClientResponseExtensions
  • NineDigit.eKasa.Core.IEKasaClientResponseExtensions.EnsureIsSuccessful(this IEKasaClientResponse)
  • NineDigit.eKasa.Core.IEKasaMessage
  • NineDigit.eKasa.Core.Printing.IPrinter
  • NineDigit.eKasa.Core.Printing.IPrinterProvider
  • NineDigit.eKasa.Core.Printing.NonfiscalReceiptPrintContext
  • NineDigit.eKasa.Core.Printing.ReceiptCopyPrintContext
  • NineDigit.eKasa.Core.Printing.ReceiptPrintContext
  • NineDigit.eKasa.Core.Printing.RequestsPrintContext
  • NineDigit.eKasa.Core.RegisterStateExtensions
  • NineDigit.eKasa.Core.Services.DateTimeProvider
  • NineDigit.eKasa.Core.Services.EuropeBratislavaDateTimeProvider
  • NineDigit.eKasa.Core.Services.ICashDrawerService
  • NineDigit.eKasa.Core.Services.ICertificateRecordRepository
  • NineDigit.eKasa.Core.Services.IDateTimeProvider
  • NineDigit.eKasa.Core.Services.IIdentityRecordRepository
  • NineDigit.eKasa.Core.Services.IMemoryFileStreamer
  • NineDigit.eKasa.Core.Services.IPrinterStatusProvider
  • NineDigit.eKasa.Core.Services.IProductInfoProvider
  • NineDigit.eKasa.Core.Services.IReceiptNumberProvider
  • NineDigit.eKasa.Core.Services.IRecordRepository
  • NineDigit.eKasa.Core.Services.IRecordRepositoryConnection
  • NineDigit.eKasa.Core.Services.IRegisterTokenQueueProcessor
  • NineDigit.eKasa.Core.Services.ISwIdProvider
  • NineDigit.eKasa.Core.Services.MemoryRecordRepository
  • NineDigit.eKasa.Core.Services.OffsetStopwatch
  • NineDigit.eKasa.Core.X509Certificate2Extensions
  • NineDigit.eKasa.Helpers.EKasaPathHelper.GetAbsoluteFilePath(string)
  • NineDigit.Validation.Extensions.IValidatableObjectExtensions
  • System.Net.WebRequestExtensions
  • System.ObjectExtensions
  • System.ObjectExtensions.ToInvariantString(this IFormattable, string)
  • System.Security.Cryptography.X509Certificates.X500DistinguishedNameExtensions
  • System.Security.Cryptography.X509Certificates.X509CertificateCollectionExtensions
  • System.TimeSpanExtensions

NuGet composition

  • Libraries for accessing CHDU devices (NineDigit.ChduTech and NineDigit.ChduLite) became separate NuGet packages.
  • NineDigit.eKasa.Core.dll is merged with NineDigit.eKasa.dll. NineDigit.eKasa NuGet package no longer contains two DLL files.
In This Article
Na začiatok stránky Nine Digit, s.r.o. ©