Unravel.Startup
0.1.36-alpha
dotnet add package Unravel.Startup --version 0.1.36-alpha
NuGet\Install-Package Unravel.Startup -Version 0.1.36-alpha
<PackageReference Include="Unravel.Startup" Version="0.1.36-alpha" />
paket add Unravel.Startup --version 0.1.36-alpha
#r "nuget: Unravel.Startup, 0.1.36-alpha"
// Install Unravel.Startup as a Cake Addin #addin nuget:?package=Unravel.Startup&version=0.1.36-alpha&prerelease // Install Unravel.Startup as a Cake Tool #tool nuget:?package=Unravel.Startup&version=0.1.36-alpha&prerelease
Unravel.Startup
Unravel provides a fully configurable ASP.NET Core IWebHost
on top of System.Web
via OWIN, with forward-compatible dependency injection, configuration and logging.
Unravel.Application
- Inherits from
System.Web.HttpApplication
- Provides OWIN Startup
- Provides ASP.NET Core Startup, including
ConfigureServices(IServiceCollection)
- Builds an ASP.NET Core
IWebHost
, including anIServiceProvider
- Static
Unravel.Application.Services
service locator - Scoped per
HttpContext
- With
GetRequestServices()
extension methods
- Static
- Inherits from
OwinHost.CreateDefaultBuilder()
, equivalent toWebHost.CreateDefaultBuilder()
.Microsoft.Extensions.Configuration
ConfigurationManagerConfigurationProvider
inspired by @benfosterappsettings.json
andappsettings.{env}.json
- User Secrets (Development only)
- Environment Variables
Microsoft.Extensions.DependencyInjection
Microsoft.Extensions.Logging
- Configured from
IConfiguration
- Debug Logger
- Configured from
Setup
Install
Unravel.Startup
in your Web Application projectSearch the project for an existing OWIN Startup Class:
There may be an
OwinStartup
attribute, e.g.[assembly: OwinStartup(typeof(UnravelExamples.Web.OwinStartup))]
Web.config
may containowin:appStartup
, e.g.<appSettings> <add key="owin:appStartup" value="UnravelExamples.Web.OwinStartup" /> </appSettings>
In the instructions that follow, use that class name instead of
Startup
(or rename it toStartup
).Open
Global.asax.cs
:- Rename the class to
Startup
- Make the class
partial
- Inherit from
Unravel.Application
-public class MvcApplication : System.Web.HttpApplication +public partial class Startup : Unravel.Application
Make sure the
Inherits
inGlobal.asax
updated, too-<%@ Application CodeBehind="Global.asax.cs" Inherits="UnravelExamples.Web.MvcApplication" Language="C#" %> +<%@ Application CodeBehind="Global.asax.cs" Inherits="UnravelExamples.Web.Startup" Language="C#" %>
- Rename the class to
If you already have a
Startup.cs
:- Make it
partial
- Replace
void Configuration(IAppBuilder app)
withoverride void ConfigureOwin(IAppBuilder app)
If you don't, create one.
Then you can
override ConfigureServices()
, too.// Startup.cs public partial class Startup { public override void ConfigureServices(IServiceCollection services) { } public override void ConfigureOwin(IAppBuilder app) { } }
- Make it
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.AspNetCore.Hosting (>= 2.1.1 && < 2.2.0)
- Microsoft.AspNetCore.Owin (>= 2.1.1 && < 2.2.0)
- Microsoft.Extensions.Configuration.EnvironmentVariables (>= 2.1.1)
- Microsoft.Extensions.Configuration.Json (>= 2.1.1)
- Microsoft.Extensions.Configuration.UserSecrets (>= 2.1.1)
- Microsoft.Extensions.DependencyInjection (>= 2.1.1)
- Microsoft.Extensions.Logging.Configuration (>= 2.1.1)
- Microsoft.Extensions.Logging.Debug (>= 2.1.1)
- Microsoft.Owin.Host.SystemWeb (>= 4.2.2)
NuGet packages (4)
Showing the top 4 NuGet packages that depend on Unravel.Startup:
Package | Downloads |
---|---|
Unravel.AspNet.WebApi
Package Description |
|
Unravel.AspNet.Mvc
Package Description |
|
Unravel.AspNet.Identity
Package Description |
|
Unravel.AspNetCore.Mvc
Package Description |
GitHub repositories
This package is not used by any popular GitHub repositories.
Version | Downloads | Last updated |
---|---|---|
0.1.36-alpha | 1,207 | 5/26/2024 |
0.1.30-alpha | 598 | 3/6/2024 |
0.1.26-alpha | 56 | 3/4/2024 |
0.1.20-alpha | 269 | 7/10/2023 |
0.1.13-alpha | 81 | 7/10/2023 |
0.1.11-alpha | 84 | 7/9/2023 |