The goal of this project is to provide a gradual migration path for legacy Asp.Net WebForms, MVC4, WebApi2 with support of DotNetCore
and AspNetCore
.
The collection of libraries in this repo enables usage of the following Microsoft nuget package with Legacy projects:
NOTE: no need to have DotNetCore
installed on Windows IIS Web Server to utilize libraries in this project. The libraries are testing in production apps currently residing on Azure Cloud
- For
Microsoft.Extensions.DependencyInjection
useBet.AspNet.DependencyInjection.Legacy
- For
Microsoft.Extensions.Options
useBet.Extensions.Options.Legacy
- For
Microsoft.Extensions.Hosting
useBet.AspNet.LegacyHosting
andBet.AspNet.LegacyHosting
- For
Microsoft.Extensions.Configuration.AzureAppConfiguration
use - For
Microsoft.FeatureManagement.AspNetCore
use BeBet.AspNet.FeatureManagement
- Developers who are stuck with supporting
ASP.NET WebForms
or .NET4.7
applications but still want to learn and grow in your career. - Developers who are trying to migrate
ASP.NET
or.NET 4.7
Applications to AspNetCore but don't have ability to migrate the entire application at once. - ASP.NET Web Apps that need to load configurations without restart.
The basic usage scenario for these libraries are the premise of strangler pattern
Waterfall approach all or nothing
- Martin Fowler: StranglerFigApplication
- Microsoft: Strangler pattern
- Strangling .NET Framework App to .NET Core
- The Strangler Pattern in Practice
Bet.AspNet.DependencyInjection.Legacy
- Legacy Support forMicrosoft.Extensions.DependecyInjection
.Bet.Extensions.Options.Legacy
- Adding support forWeb.config
orApp.config
.Bet.Extensions.LegacyHosting
-AddingMicrosoft.Extensions.Hosting
to Console Applications.Bet.AspNet.LegacyHosting
- AddingMicrosoft.Extensions.Hosting
to existing Asp.Net Web Applications.Bet.AspNet.FeatureManagement
- AddingMicrosoft.FeatureManagement.AspNetCore.
to existing Asp.Net Web Applications.Bet.AspNet.LegacyHosting.AzureAppConfiguration
- AddingMicrosoft.Extensions.Configuration.AzureAppConfiguration
to existing Asp.Net Web Applications.
Bet.WebAppSample
- Utilized all of the libraries example.
dotnet build Bet.Extensions.Legacy.Nuget.sln -c Release
dotnet pack Bet.Extensions.Legacy.Nuget.sln -c Release -o pack