天天看点

.Net C#控制台依赖注入

 只需要将serviceProvider做成单利,将所有服务注入到serviceProvider

var serviceProvider = new ServiceCollection()
    .AddSingleton<ILogger, Log4netLogger>()
    .BuildServiceProvider();
//configure console logging
serviceProvider.GetService<ILogger>().Initialize("EdgeService");
serviceProvider.GetService<ILogger>().LogLevel = LoggingEventType.Debug;
//save log
var _logger = serviceProvider.GetService<ILogger>();
if (_logger != null)
{
    _logger.Debug(typeof(Program), "Starting application");
}
           

需要NuGet安装Microsoft.Extensions.DependencyInjec库

c#