Skip to content
This repository was archived by the owner on Feb 5, 2024. It is now read-only.

Repository files navigation

Spring.Extensions.DependencyInjection

Build StatusCode CoverageNuGet version

Integrate Spring.NET with Microsoft.Extensions.DependencyInjection

Installation

dotnet add package Spring.Extensions.DependencyInjection

Getting Started

integrate with Microsoft.Extensions.Hosting

varhost=Host.CreateDefaultBuilder().UseServiceProviderFactory(newSpringServiceProviderFactory()).ConfigureServices((context,services)=>{// ...}).Build();

integrate with ASP.NET Core Minimal APIs

varbuilder=WebApplication.CreateBuilder(args);builder.Host.UseServiceProviderFactory(newSpringServiceProviderFactory());

building ServiceProviderFactory from exists ApplicationContext

usingMicrosoft.Extensions.DependencyInjection;usingSpring.Context.Support;usingSpring.Extensions.DependencyInjection;// ...varfactory=newSpringServiceProviderFactory(options =>{varcontext=newCodeConfigApplicationContext();context.ScanAllAssemblies();context.Refresh();options.Parent=context;});// or//var factory = new SpringServiceProviderFactory(ContextRegistry.GetContext());// or//var factory = new SpringServiceProviderFactory(new XmlApplicationContext("objects.xml"));// ...

building ApplicationContext from ServiceCollection

usingMicrosoft.Extensions.DependencyInjection;usingSpring.Context.Support;usingSpring.Extensions.DependencyInjection;// ...varfactory=newSpringServiceProviderFactory();varservices=newServiceCollection();ConfigureServices(services);varcontext=factory.CreateBuilder(services);// ...

building ServiceProvider from Spring.NET ApplicationContext

usingMicrosoft.Extensions.DependencyInjection;usingSpring.Context.Support;usingSpring.Extensions.DependencyInjection;// ...varfactory=newSpringServiceProviderFactory();varservices=newServiceCollection();ConfigureServices(services);varcontext=factory.CreateBuilder(services);varprovider=factory.CreateServiceProvider(context);// or directly building serviceProvider from exists ApplicationContext without integrate ServiceCollection//var provider = factory.CreateServiceProvider(ContextRegistry.GetContext());// ...

Known issues

  • the same service type in CodeConfigApplicationContext or XmlApplicationContext was preferred for SpringServiceProvider in SpringServiceScope

About

Integrate Spring.NET with Microsoft.Extensions.DependencyInjection

Topics

Resources

Stars

7 stars

Watchers

0 watching

Forks

Releases

Used by

Contributors

Languages