我尝试使用预定义的发布配置文件在命令行上构建和发布我的.NET Core应用程序。
对于ASP.NET Core应用程序,这(取自here)有效:
dotnet build -c Release /p:DeployOnBuild=true /p:PublishProfile=ReleaseFolder
但对于控制台应用程序(发布配置文件称为FolderProfile
,以下内容不起作用:
dotnet build -c Release /p:DeployOnBuild=true /p:PublishProfile=FolderProfile
它构建项目但不发布它。
那么如何使用预定义的发布配置文件发布控制台应用程序?
答案 0 :(得分:2)
发布配置文件支持是Web目标使用的Web-SDK的一部分。 ASP.NET Core应用程序通常使用Microsoft.NET.Sdk.Web
控制台应用程序使用Microsoft.NET.Sdk
项目。
由于控制台应用程序不包含Web SDK的发布支持,因此您只能使用生成可部署输出的Publish
目标。它由dotnet cli的dotnet publish
命令包装,也可以用作msbuild /t:Publish
。此发布命令不支持发布配置文件,因为它只是基于文件系统的操作。
答案 1 :(得分:0)
您现在可以将Microsoft.NET.Sdk.Publish sdk添加到您的项目文件中。这样一来,您就可以在项目中使用dotnet publish
。
<Project Sdk="Microsoft.NET.Sdk;Microsoft.NET.Sdk.Publish">