首页 新闻 搜索 专区 学院

.net core控制台应用程序怎么像asp.net core一样使用 ILoggerFactory ?

0
悬赏园豆:10 [待解决问题]

新建了一个asp.net core的应用,使用Log4net记录日志,

public static IHostBuilder CreateHostBuilder(string[] args) =>
            Host.CreateDefaultBuilder(args)
            .ConfigureLogging(loggingBuider =>
            {
                //配置Log4net为log组件
                loggingBuider.AddLog4Net("Config\\Log4net.config");//使用相对路径
            })
            .UseServiceProviderFactory(new AutofacServiceProviderFactory())//设置服务提供者为autofac
            .ConfigureWebHostDefaults(webBuilder =>
            {
                // 设置Startup为启动类型 
                webBuilder.UseStartup<Startup>();
            });

 

Service层通过依赖注入使用 ILoggerFactory,代码如下

        private ILogger<TestService> _logger;

        public TestService(ILoggerFactory loggerFactory)
            : base(loggerFactory)
        {
            this._logger = loggerFactory.CreateLogger<TestService>();
            
        }

Service是一个独立的类库,现在新建了一个控制台应用程序,也引用到了Service.DLL,现在无法通过依赖注入的方式拿到ILoggerFactory 对象,请问控制台应用程序能像asp.net core程序那样配置Log4net组件吗?

爱杨洋真是太好了的主页 爱杨洋真是太好了 | 初学一级 | 园豆:12
提问于:2020-06-27 12:50
< >
分享
所有回答(2)
0

可以参考一下 调用博客园 open api 的客户端示例代码 中的 .net core 控制台程序代码。

dudu | 园豆:38992 (高人七级) | 2020-06-27 12:57

我这版控制台应用并没有使用HostBuilder

支持(0) 反对(0) 爱杨洋真是太好了 | 园豆:12 (初学一级) | 2020-06-27 13:32

@爱杨洋真是太好了: 参考 在.NET Core控制台程序中使用依赖注入

支持(0) 反对(0) dudu | 园豆:38992 (高人七级) | 2020-06-27 16:59
0

可以用第三方依赖注入容器

会长 | 园豆:9004 (大侠五级) | 2020-06-28 09:25

autofac?  但是这个怎么在控制台使用呢

支持(0) 反对(0) 爱杨洋真是太好了 | 园豆:12 (初学一级) | 2020-07-12 14:30
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册