天天看点

问题及解决:使用dotnet publish发布时Visual Stuido创建的配置文件中的路径失效

在Visual Stuido 2022中创建的项目需要发布到文件夹,使用Visual Studio的发布功能创建发布文件然后执行发布,一切正常,部署文件可以生成到预设的目录中。在Visual Studio中界面是这样的:

问题及解决:使用dotnet publish发布时Visual Stuido创建的配置文件中的路径失效

接下来,由于需要使用自动部署,希望使用命令行工具进行发布,这可以使用dotnet publish命令完成:

<code>dotnet publish ./src/IDS4Admin.Admin/IDS4Admin.Admin.csproj /p:Configuration=Release /p:PublishProfile=FolderProfile3</code>

这时问题出现了,生成的文件没有拷贝到预设的目录,而是在项目的bin/Release目录中又新创建了publish目录。仔细研究一下Visual Studio生成的部署配置文件FolderProfile3.pubxml,发现有些问题:

生成的路径使用的是PublishUrl,生成方法是WebPublishMethod,这应该有问题,文件路径应该使用PublishDir,生成的方法应该使用PublishProtocol,于是手工创建一个新的配置文件FolderProfile4.pubxml,修改上面两项内容:

使用命令行生成可以了,文件能够正确输出到预设的目录。可新的问题产生了,这个配置文件在Visual Studio中被认为是Web部署:

问题及解决:使用dotnet publish发布时Visual Stuido创建的配置文件中的路径失效

在Visual Studio中不能正确执行部署了。

从现象上看,似乎是Visual Studio把两种部署方式搞反了,在现实中,只能创建两个部署文件,一个用于命令行自动部署,一个用于Visual Studio手工生成。

本文来自博客园,作者:寻找无名的特质,转载请注明原文链接:https://www.cnblogs.com/zhenl/p/15603274.html