IIS 中的 ASP Core 2,Console Application
在项目属性中。 Visual Studio 2017 社区。
我正在尝试登录控制台,但控制台根本不显示。
目标是在连接浏览器时简单地显示控制台以进行日志记录。
我已在 BuildWebHost
中配置了应用程序这样:
public static IWebHost BuildWebHost(string[] args) =>
WebHost.CreateDefaultBuilder(args)
.ConfigureAppConfiguration((builderContext, config) =>
{
IHostingEnvironment env = builderContext.HostingEnvironment;
})
.ConfigureLogging((hostingContext, logging) =>
{
logging.AddConsole();
logging.AddDebug();
})
.UseNLog()
.UseStartup<Startup>()
.Build();
添加更多上下文:
- 我能够使用 NLog 正确记录到文件
- 我在 Output
中看到日志消息VS 中的窗口
- 我知道如何向浏览器发送和查看日志消息。
我只想在 Debug模式下将应用程序启动到 Visual Studio 并打开控制台窗口。那可能吗?
从命令提示符处使用 dotnet-run 运行应用程序不是一个解决方案,因为我没有编辑并继续功能。
通常,当您创建新的 ASP Core 2 Console Application
时,只需执行 Console.WriteLine("Hello world");
即可看到控制台在 Program
方法。然而,在我的应用程序中,这不会显示控制台。
我知道原因可能在于控制台输出被重定向或不存在;事实上,如果我这样做Console.ReadKey();
我得到以下信息:
'Cannot read keys when either application does not have a console or when console input has been redirected. Try Console.Read.'
任何提示表示赞赏。
<小时/>一些引用/测试尝试无济于事:
最佳答案
如果您希望在 Visual Studio 2017 中调试时使用它,只需打开“输出”窗口并查看下拉列表,您应该会看到 ASP.NET Core 命令行选项。
不需要 Console.Read,因为它都是异步的(它可能会阻止应用程序运行)。
如果您没有使用 VS2017,则只需从命令行运行它 (dotnet run)。
关于asp.net - 显示用于登录 ASP Core 2 的控制台,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48798078/