将部署为 Web 包的 msbuild zip 文件的路径级别变小

Make the path level smaller for msbuild zip file that is deployed as a web package

我正在使用 MSBUILD 构建一个仅包含 ASP.NET Web 应用程序项目的解决方案。这是我用来执行此操作的确切行,

msbuild webapp.sln /p:Configuration="Release" /p:DeployOnBuild=true

现在这将构建一个包含 Web 包文件的 zip 文件,但它全部包含在一个非常长的文件夹结构中。现在来了解一下上下文。我在 Azure 中有一个应用程序服务,我在 Visual Studio 2019 年使用“发布”功能发布我的项目。这将文件发布在 Azure 中的“wwwroot/Files”文件夹下。现在我遇到的问题是,当这个 zip 文件部署到我在 Azure 中的应用程序服务时,我的“wwwroot/Files”文件夹现在包含以下文件夹结构,

\Content\C_C\Source控制Root\Version\Type\Workspace\Solution\Project\obj\Release\Package\PackageTmp\

基本上,从 Visual Studio 2019 年发布到“wwwroot/Files”的内容现在发布到“wwwroot/Files/Content/C_C/Source Control Root/Version/Type/Workspace/Solution/Project/obj/Release/Package/PackageTmp/".

我希望能够通过创建 web 包文件的 zip 文件而不将其嵌套在非常长的文件夹结构中来模仿之前使用 VS 2019 中的“发布”功能完成的操作。有可能实现这一目标吗?如果是这样,这将如何完成?

P.S 我使用以下 Powershell 脚本将 zip 文件部署到 Azure,

Publish-AzWebapp -ResourceGroupName $resgroup -Name $name -ArchivePath "C:/SomewhereLocal~\WebhookBot.zip"

您可能需要 Deploy your app to Azure App Service with a ZIP or WAR file

首先,在 VS 中选择发布为文件夹 单击发布,这将生成一个包含发布文件的文件夹,如下所示。我压缩了内容并将其命名为 MyWebApp.zip ,稍后我们将使用它部署到 Azure 应用程序服务。 按照 docs 关于从 ZIP 文件部署。 查看wwwroot中的文件内容: