Jehoel.Unity.AspNetWebForms
2.0.0-beta7
dotnet add package Jehoel.Unity.AspNetWebForms --version 2.0.0-beta7
NuGet\Install-Package Jehoel.Unity.AspNetWebForms -Version 2.0.0-beta7
<PackageReference Include="Jehoel.Unity.AspNetWebForms" Version="2.0.0-beta7" />
<PackageVersion Include="Jehoel.Unity.AspNetWebForms" Version="2.0.0-beta7" />
<PackageReference Include="Jehoel.Unity.AspNetWebForms" />
paket add Jehoel.Unity.AspNetWebForms --version 2.0.0-beta7
#r "nuget: Jehoel.Unity.AspNetWebForms, 2.0.0-beta7"
#:package Jehoel.Unity.AspNetWebForms@2.0.0-beta7
#addin nuget:?package=Jehoel.Unity.AspNetWebForms&version=2.0.0-beta7&prerelease
#tool nuget:?package=Jehoel.Unity.AspNetWebForms&version=2.0.0-beta7&prerelease
Unity.WebForms
(Currently listed on NuGet.org as Jehoel.Unity.AspNetWebForms)
Unity.WebForms is a collection of various ideas on Dependency Injection utilizing the Unity container in ASP.NET WebForm applications, formalized into a single NuGet package for easy integration into an existing application.
This package was inspired by similar packages from DevTrends, specifically:
The only difference is that this packages is a DLL integration with minimal source code added. The only source file added is to allow the configuration of the Unity container with your types.
This particular package (Jehoel.Unity.AspNetWebForms) and repo (at https://github.com/Jehoel/Unity.WebForms) is a git fork of S. Kyle Korndoerfer's original project at https://bitbucket.org/KyleK/unity.webforms with a main objective of supporting ASP.NET WebForms 4.7.2's new WebObjectActivator which means that Page, UserControl and other types can use true constructor dependency injection.
This repo's objectives are:
- Update to .NET Framework 4.7.2 (done)
- Update existing dependencies, including Unity 5 (done)
- Add in support for WebObjectActivator, as per Microsoft's example at https://github.com/aspnet/AspNetWebFormsDependencyInjection (done)
- Update the sample project (done)
- Publish to NuGet (
Jehoel.Unity.AspNetWebForms) (done)
Current Version
- 1.4 (right before .NET 4.7.2 support)
- 2.0 (this repo and project)
NuGet Gallery
Version 1.4 (.NET 4.5, no support for WebObjectActivator)
http://nuget.org/packages/Unity.WebForms
Version 2.0 (.NET 4.7.2, with support for WebObjectActivator)
http://nuget.org/packages/Jehoel.Unity.AspNetWebForms
Installation
Install-Package Jehoel.Unity.AspNetWebForms
Quick Start
Once installed, the Unity.WebForms package will have added the necessary dependencies and references to your project along with a (potentially) new folder named App_Start. Inside this folder, there will be a new class file named UnityWebFormsStart.cs. The registration of any dependencies you have should be done in the RegisterDependencies( IUnityContainer container ) method.
Detailed information about how this project works can be found in the wiki
References / Links
Here are some of the sources used for building out this package:
Unity.WebForms:- Dependency Injection in ASP.NET WebForms - Mikael Lundin
- Unity: How to registerType with a PARAMETER constructor
- Unity.MVC3 - The linked articles on the bottom helped a lot with infrastructure
Jehoel.Unity.AspNetWebForms:- Announcing the .NET Framework 4.7.2 - This article announced support for constructor-based DI.
- Use Dependency Injection In WebForms Application
- AspNetWebFormsDependencyInjection on Github
- Sample example of using AspNetWebFormsDependencyInjection - (Repository snapshot)
Copyright
- Copyright 2013 - 2015 S. Kyle Korndoerfer
- Copyright 2019 Dai Rees
License
Unity.WebForms is under the MIT license - http://www.opensource.org/licenses/mit-license
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET Framework | net472 is compatible. net48 was computed. net481 was computed. |
-
.NETFramework 4.7.2
- Microsoft.Web.Infrastructure (>= 1.0.0)
- Unity (>= 5.11.1)
- WebActivatorEx (>= 2.2.0)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated | |
|---|---|---|---|
| 2.0.0-beta7 | 975 | 7/26/2019 | |
| 2.0.0-beta4 | 771 | 7/26/2019 | |
| 2.0.0-beta10 | 832 | 7/27/2019 |
Targets .NET 4.7.2 and Unity 5.11.1.