asp.net - 显示用于登录 ASP Core 2 的控制台

标签 asp.net console console-application asp.net-core-2.0 console.log

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/

相关文章:

asp.net - 为什么这违反了类型约束?

c# - 从代码隐藏添加文本到网页

javascript - 未捕获的语法错误 : Unexpected token = in Google Chrome

java - 当我完成运行时,如何将 IntelliJ 上的控制台输出设置在底部

c++ - 为什么我的简单 C++ 控制台应用程序在 Visual Studio 2015 中看不到我的简单 C++ 静态库 header ?

c#-4.0 - C# 控制台应用程序中的正确文件路径

asp.net - Google map 不会在 ASP.NET 母版页中显示

C# Gridview 标题样式不适用于排序

c++ - QFileSystemWatcher 不在控制台应用程序中发出 fileChanged()

c++ - 如何将控制台数据写入 C++ 中的文本文件?