将msbuild参数传递给dotnet run命令

7
我们可以将msbuild参数传递给dotnet build命令:
dotnet build MyApp.csproj /p:SolutionDir=C:\MyApp

我们如何使用“dotnet run”完成相同的操作?
以下方式不可行:
dotnet run MyApp.csproj /p:SolutionDir=C:\MyApp

我们考虑的使用场景是在使用run命令时与dotnet watch一起使用,并将msbuild参数传递给run命令的隐式build步骤。
2个回答

4
dotnet build MyApp.csproj /p:SolutionDir=C:\MyApp & dotnet run myApp.csproj --no-build

3
在 dotnet 6 或更高版本中,您也可以为运行命令提供 -p,--property 参数。
> dotnet --version
6.0.200
> dotnet run --help
Description:
  .NET Run Command

Usage:
  dotnet [options] run [[--] <additional arguments>...]]

Options:
  -c, --configuration <CONFIGURATION>  The configuration to run for. The default for most projects is 'Debug'.
  -f, --framework <FRAMEWORK>          The target framework to run for. The target framework must also be specified in the project file.
  -r, --runtime <RUNTIME_IDENTIFIER>   The target runtime to run for.
  --project <project>                  The path to the project file to run (defaults to the current directory if there is only one project).
  -p, --property <property>            Properties to be passed to MSBuild.
  --launch-profile <launch-profile>    The name of the launch profile (if any) to use when launching the application.
  --no-launch-profile                  Do not attempt to use launchSettings.json to configure the application.
  --no-build                           Do not build the project before running. Implies --no-restore.
  --interactive                        Allows the command to stop and wait for user input or action (for example to complete authentication).
  --no-restore                         Do not restore the project before building.
  --sc, --self-contained               Publish the .NET runtime with your application so the runtime doesn't need to be installed on the target machine.
                                       The default is 'true' if a runtime identifier is specified.
  --no-self-contained                  Publish your application as a framework dependent application. A compatible .NET runtime must be installed on the target machine to run your application.
  -v, --verbosity <LEVEL>              Set the MSBuild verbosity level. Allowed values are q[uiet], m[inimal], n[ormal], d[etailed], and diag[nostic].
  -a, --arch <arch>                    The target architecture.
  --os <os>                            The target operating system.
  -?, -h, --help                       Show command line help.

Additional Arguments:
  Arguments passed to the application that is being run.

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接