LANCommander/LANCommander.Server.Services/Factories/DatabaseServiceFactory.cs

22 lines
542 B
C#
Raw Permalink Normal View History

using Microsoft.Extensions.DependencyInjection;
namespace LANCommander.Server.Services.Factories
{
public class DatabaseServiceFactory
{
private readonly IServiceProvider ServiceProvider;
public DatabaseServiceFactory(IServiceProvider serviceProvider)
{
ServiceProvider = serviceProvider;
}
public T Create<T>() where T : BaseService
{
var scope = ServiceProvider.CreateScope();
return scope.ServiceProvider.GetService<T>();
}
}
}