在 Visual Studio 2019 中调试时将输入重定向到 .NET Core 控制台应用程序

Posted

技术标签:

【中文标题】在 Visual Studio 2019 中调试时将输入重定向到 .NET Core 控制台应用程序【英文标题】:Redirect input to .NET Core Console App on debugging in Visual Studio 2019 【发布时间】:2021-07-23 03:13:35 【问题描述】:

在 C# .NET Core 控制台应用程序中,如何在调试时定义重定向输入到应用程序?

我已尝试使用项目属性的“应用程序参数”,但不起作用。

应用程序打开并立即关闭。

在 VSCode 中,可以使用 args 配置 launch.json 文件: https://code.visualstudio.com/Docs/editor/debugging#_redirect-inputoutput-tofrom-the-debug-target

【问题讨论】:

【参考方案1】:

以同样的方式完成。应该会生成一个Properties/launchSettings.json 文件,类似于这个:


  "profiles": 
    "YourProjectName": 
      "commandName": "Project",
      "commandLineArgs": "< input-file.txt"
    
  


请注意,如果您从 Visual Studio 调试,您需要确保将输入文件复制到输出文件夹,以便重定向工作。

即您可以手动将其添加到.csproj:

  <ItemGroup>
    <None Update="input-file.txt">
      <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
    </None>
  </ItemGroup>

或者,正如@paulsm4 建议的那样,通过VS 接口配置它:input-file.txt -> Properties -> 'Copy'

【讨论】:

你是绝对正确的。小补充:我相信您还可以在 MSVS UI 中将“input-file.txt”> 属性设置为“复制”(与手动破解 .csproj 相比)。

以上是关于在 Visual Studio 2019 中调试时将输入重定向到 .NET Core 控制台应用程序的主要内容,如果未能解决你的问题,请参考以下文章

如何在调试构建期间使 Visual Studio (2019/2022) 链接到正常的运行时库?

调试时 Visual Studio 2019 未启动控制台应用程序窗口

在 Visual Studio 2019 中调试时将输入重定向到 .NET Core 控制台应用程序

Visual Studio 2019 不会调试 Azure Function V2

在 Visual Studio Code 中调试 python 程序时更改代码

Microsoft Visual Studio 2019一些个人初始设置