Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Upgraded to support .NET 6 and Entity Framework Core #63

Open
wants to merge 116 commits into
base: master
Choose a base branch
from

Conversation

rafidzal
Copy link
Contributor

  • 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.

… SifFramework.config file. Created associated unit tests.
… the ISessionService interface. General code clean up.
…n in favour of the versions in the Tardigrade Framework.
…vice so that sessions can be stored in a database.
…vice. Updated Demo Consumers to use a session service that connects to a database.
…eated the FrameworkConfigFactory to simply configuration of Providers.
… typo with the provider.environmentType database app setting. General code and documentation enhancements.
…on for the configuration of session token storage in a database.
Enabled session tokens to be stored in a database
- Updated the EnvironmentService class constructor to add an IEnvironmentRepository interface.
- General code clean-up.
… interface from the Tardigrade.Framework NuGet package.

- General code clean-up.
… interface from the Tardigrade.Framework NuGet package.

- General code clean-up.
…Framework.AspNet.

- Added .NET 6 as a Target Framework to the Sif.Framework project.
- Removed .NET Framework 4.6.1 as a Target Framework from all SDK-style library projects.
- Upgraded all ASP.NET Web API, Demo and Unit Test projects from .NET Framework 4.6.1 to 4.7.2.
- Updated third-party NuGet packages.
…EnvironmentProvider project to reference the Sif.Framework.AspNet project.

- Created a new Environment Provider project for ASP.NET Core - Sif.Framework.AspNetCore.EnvironmentProvider.
- General code clean-up.
…EnvironmentProvider project to reference the Sif.Framework.AspNet project.

- Created a new Environment Provider project for ASP.NET Core - Sif.Framework.AspNetCore.EnvironmentProvider.
- General code clean-up.
…entService interface rather then constructing one.
…Hibernate. Moved all NHIbernate specific code from the Sif.Framework project to this new project.

-  Updated the ApplicationRegisterService class constructor to add an IApplicationRegisterRepository interface.
…constructor as opposed to instantiated by the Controller/Provider.
…constructor as opposed to instantiated by the Controller/Provider.
…Framework project.

- Updated the NHibernate mapping files to reference the new Sif.Framework.NHibernate assembly.
- References to NHibernate specific code now use Sif.Framework.NHibernate.
- Updated the way the EnvironmentProviderSessionFactory class finds the SifFramework.cfg.xml file.
…Sif.Framework.AspNet project.

- Refactored methods from the EnvironmentUtils.cs and HttpUtils.cs classes into corresponding extension methods.
- Removed the StringUtils.cs class.
- Code clean-up of SIF Consumers.
…Web API specific code) from the Sif.Framework project. Re-factored all referenced code from the Sif.Framework and demo projects.

- Returned the IProvider.cs interface from the Sif.Framework.AspNet project back to the Sif.Framework project.
- Moved ASP.NET Web API specific extension code from the Sif.Framework project to the Sif.Framework.AspNet project.
rafidzal added 30 commits May 8, 2022 16:47
…of the passed type.

- Fixed an issue with the MethodOverrideMiddleware configuration on start up.
- Updated the ConsumerApp to return code for deleting multiple students.
…ence the XmlRootAttribute of the associated generic type.
…e delete configuration with SQL Server. Updated the Demo.AspNetCore.Setup project to better support LocalDB in addition to SQLite.
…ork.Demo.NetCore.Setup. Updated documentation and BAT scripts accordingly.
…ining exercises. Enhanced the RegistrationService to provide more meaningful exception messages.
…es to Sif.Framework.Models and Sif.Framework.Services respectively.
…ckages rather then direct project references.
Upgraded to support .NET 6 and Entity Framework Core
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant