Skip to content

Upgraded to support .NET 6 and Entity Framework Core

Compare
Choose a tag to compare
@rafidzal rafidzal released this 25 Aug 13:32
· 2 commits to master since this release
4b23983
  • GENERAL CHANGES
    • Created Sif.Framework technology specific projects for ASP.NET Core and Entity Framework Core.
      • Sif.Framework.AspNetCore
      • Sif.Framework.EntityFrameworkCore
    • Created a new Environment Provider project based upon ASP.NET Core.
      • Sif.Framework.AspNetCore.EnvironmentProvider
    • Added unit tests for Entity Framework Core specific code.
    • Added training projects to supplement the documented training exercises.
      • Sif.Framework.Training.TestConsumer
      • Sif.Framework.Training.TestProvider
    • Refactored methods from the EnvironmentUtils, HttpUtils and ProviderUtils classes into corresponding extension methods.
    • Fixed error managment issues in the SessionService class.
    • Updated the demo projects to .NET Framework 4.7.2.
      • Sif.Framework.Demo.Au.Consumer
    • Replace some exception classes with equivalent exception classes from the Tardigrade.Framework NuGet package.
    • Created documentation specific to the ASP.NET Core version of the SIF Framework.
    • Created demo set-up, Consumer and Provider projects specific to the ASP.NET Core version of the SIF Framework.
      • Sif.Framework.Demo.Consumer
      • Sif.Framework.Demo.NetCore.Setup
      • Sif.Framework.Demo.Provider
    • Created shell scripts to run the ASP.NET Core demo projects.
    • Upgraded all ASP.NET Web API, Demo and Unit Test projects from .NET Framework 4.6.1 to 4.7.2.
    • Split the functionality of EnvironmentService into 2 classes to better reflect the original intent of the service - EnvironmentService and EnvironmentDtoService. Updated references to reflect this change.
    • Corrected a return type design issue with the IEnvironmentService interface.
    • Updated the DbContext to eager load all relationships.
    • Updated the ArrayOfOutputFormatter class constructor to accept a string rather than the IFrameworkSettings interface.
    • Deprecating the following classes:
      • Model/Settings/ConfigFileBasedFrameworkSettings
      • Model/Settings/ConsumerSettings
      • Model/Settings/ProviderSettings
      • Utils/SettingsManager
    • Updated XML documentation in classes.
    • Updated third-party NuGet packages.
    • General code clean-up.
  • CHANGES AFFECTING BACKWARD COMPATIBILITY
    • Added .NET 6 as a Target Framework to the Sif.Framework project and dropped .NET Framework 4.7.2.
    • Removed .NET Framework 4.6.1 as a Target Framework from all SDK-style library projects.
    • Deprecated the IPersistable interface for the IHasUniqueIdentitifer interface from the Tardigrade.Framework NuGet package.
    • Re-designed the ISifService interface.
    • Re-designed the IAuthorisationService and IAuthenticationService interfaces.
    • Infrastructure model objects that referenced associations using an IDictionary have been refactored to use ICollection instead. These changes have been reflected in the NHibernate mapping files and AutoMapper mappings.
      • Environment
      • EnvironmentRegister
      • Job
      • Phase
      • Service
      • Zone
    • Re-ordered the constructor parameters for the RequestParameter class.
    • Replaced references to the IGenericRepository interface with the IRepository interface from the Tardigrade.Framework NuGet package.
    • Replaced references to the IGenericService interface with the IObjectService interface from the Tardigrade.Framework NuGet package.
    • Replaced references to the GenericService class with the ObjectService class from the Tardigrade.Framework NuGet package.
    • Refactored the constructor of all infrastructure service classes to allow for injection of repositories and services.
    • Updated the NHibernate mapping for the Environment class to save the EnvironmentType enum property as a string rather than integer.
  • CHANGES WHICH BREAK BACKWARD COMPATIBILITY WITH IMPLEMENTED CONSUMERS AND PROVIDERS
    • Split the Sif.Framework project into multiple technology specific projects for ASP.NET Web API, Entity Framework and NHibernate.
      • Sif.Framework.AspNet
      • Sif.Framework.EntityFramework
      • Sif.Framework.NHibernate
    • Renamed the Sif.Framework.Model namespace to Sif.Framework.Models.
    • Renamed the Sif.Framework.Service namespace to Sif.Framework.Services.
    • Removed the Sif.Framework.EntityFramework.Services.Sessions namespace and migrated classes to Sif.Framework.Services.Sessions.
    • Updated all Controllers/Providers so that services are passed to the constructor as opposed to instantiated by the Controller/Provider.