.NET CORE CLI 可以从文件加载参数吗?

Iva*_*ski 2 c# command-line-interface .net-core dotnet-cli dotnet-sdk

我正在使用 .net cli 2.0.3,我想知道是否可以从文件 ie 加载我的参数

dotnet publish -args somefile

Wheresomefile将包含特定命令接受的参数。例如,在发布时我想预定义path\project.csproj -c Release -o "outputpath"

我知道 sdk 中没有那种命令,但是有没有办法实现它?

此致!

Mar*_*ich 5

虽然 CLI 本身没有加载响应文件的机制,但它调用了 MSBuild,它支持指定的响应文件和以下自动响应文件:

  1. MSBuild.rsp 在要构建的项目/解决方案文件旁边
  2. Directory.Build.rsp 在要构建的项目/解决方案文件或上方的层次结构中

虽然您不能指定 CLI 参数,但您可以指定它们的等效 MSBuild 参数。

例如,您可以release.rsp在解决方案文件旁边创建一个指定:

-p:Configuration=Release
-p:OutputPath=..\rel-out\
-p:PublishDir=..\pub-out\
Run Code Online (Sandbox Code Playgroud)

你可以用来打电话

dotnet publish test\project.csproj @release.rsp
Run Code Online (Sandbox Code Playgroud)

如果相同的文件被命名为Directory.Build.rsp,它将被自动应用。如果它被命名MSbuild.rsp并将它放在 csproj 文件旁边,它也会自动应用。