【发布时间】:2020-12-09 05:24:54
【问题描述】:
我正在尝试在我的 dotnet 核心应用程序中配置 nlogging。在创建 CreateHostBuilder 方法时,我遇到了一个编译错误“当前上下文中不存在名称‘主机’”。我也提供了命名空间。 我的program.cs文件代码如下:
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Threading.Tasks;
using Microsoft.AspNetCore;
using Microsoft.AspNetCore.Hosting;
using Microsoft.Extensions.Configuration;
using Microsoft.Extensions.Logging;
using Microsoft.Extensions.Hosting;
using Microsoft.Extensions.DependencyInjection;
public static IHostBuilder CreateHostBuilder(string[] args) =>
Host.CreateDefaultBuilder(args)
.ConfigureWebHostDefaults(webBuilder =>
{
webBuilder.UseStartup<Startup>();
})
.ConfigureLogging(logging =>
{
logging.ClearProviders();
logging.SetMinimumLevel(Microsoft.Extensions.Logging.LogLevel.Trace);
})
.UseNLog(); // NLog: Setup NLog for Dependency injection
在“主机”处获取异常。
【问题讨论】:
-
检查您的版本伙伴,您使用的是 2.x 还是 3.0。 Net Core 2.x 不支持
Host.CreateDefaultBuilderits for 3.0 -
@keysl 知道了。我们可以在 2.1 中做这件事吗?
-
对于 2.1,您需要使用
WebHost而不是Host -
@keysl ,当我使用虚拟主机时。我正面临“ConfigureWebHostDefaults”的问题
标签: asp.net-core .net-core nlog