如何使用IIS Express在ASP.NET Core中获取控制台输出

Ily*_*dik 15 c# kestrel-http-server asp.net-core

这里的 ASP.Net核心文档有一个很好的控制台日志记录输出,如下图所示,各种LogLevels的颜色.我现在已经在Visual Studio中创建了一个应用程序,我发现它现在在IIS Express后运行,我再也看不到控制台了.我记得当我确实运行测试版时,它确实直接用这个漂亮的控制台输出弹出Kestrel.

现在可以获得这个漂亮的窗口吗?

PS文档仍然包含您甚至无法看到的这些图像,这有点奇怪.

在此输入图像描述

max*_*pan 19

除了Dawid Rutkowski 的回答,在顶部下拉列表中,不要选择 IISExpress,选择应用程序名称。您应该能够看到控制台和网页。

  • 我没有看到这个选项。VS2022 社区 (2认同)

Daw*_*ski 6

是的,IIS Express可以实现.使用Microsoft.Extensions.Logging.Debug nuget包:https://github.com/aspnet/Logging/tree/master/src/Microsoft.Extensions.Logging.Debug.在Startup.cs中配置记录器:

loggerFactory.MinimumLevel = LogLevel.Debug;
loggerFactory.AddDebug( LogLevel.Debug );
var logger = loggerFactory.CreateLogger("Startup");
logger.LogWarning("Logger configured!");
Run Code Online (Sandbox Code Playgroud)

和:

Console.WriteLine("Hi!");
Run Code Online (Sandbox Code Playgroud)

  • 好吧,一旦它允许轻松看到错误,这对我来说非常有用. (3认同)
  • 切换到Serilog然后:https://github.com/serilog/serilog-extensions-logging (3认同)
  • 您正在使用控制台获得漂亮的颜色或获得有用的信息? (2认同)
  • 这个答案缺少很多信息,这将使新的 ASP.NET 程序员(比如我自己)很难弄清楚它的确切用途。 (2认同)