Visual Studio WLS2 调试和命令行参数

Ghi*_*nio 5 .net c# visual-studio-debugging .net-core wsl-2

我正在尝试在 Visual Studio 2019 和 WLS2 中调试 .net core 控制台应用程序。控制台应用程序在启动时需要命令行参数。

这是我的launchSettings.json

{
  "profiles": {
    "ConsoleApp": {
      "commandName": "Project",
      "commandLineArgs": "--s",
    },
    "WSL 2": {
      "commandName": "WSL2",
      "commandLineArgs": "--s",
      "distributionName": ""
    }
  }
}
Run Code Online (Sandbox Code Playgroud)

使用“ConsoleApp”配置文件启动调试会话,应用程序控制台按预期获取参数“--s”,但使用“WSL 2”配置文件在 WSL 中执行调试时,我收到以下消息:

Unknown option: --s

.NET Core SDK (3.1.404)

Usage: dotnet [runtime-options] [path-to-application] [arguments]
Run Code Online (Sandbox Code Playgroud)

v1p*_*p3r 8

对于commandLineArgsWSL2,如果未提供,则默认为 dll 的名称。当您显式提供一个时,您还必须提供 dll 名称以及参数。如果您的项目名称是 MyNamespace.MyProject,请按如下方式更新您的启动设置:

"WSL 2": {
  "commandName": "WSL2",
  "commandLineArgs": "MyNamespace.MyProject.dll --s",
  "distributionName": ""
}
Run Code Online (Sandbox Code Playgroud)