dotnet publish commandline with platform parameter value of “Any CPU” for a .NET Core Web API Application
我们使用以下技术开发了一个.NET Core Web API应用程序:
-NET Core(3.1)
-Visual Studio 2019
不幸的是,我们必须将所述应用程序部署到以下环境:
-32位环境
-Windows Server 2008 R2 Enterprise(Service Pack 1)
-IIS版本7.5
-8 GB RAM
(而且,它必须是一个进程内的,因为我们只希望.NET Core Web API应用程序位于IIS Server中)*
在使用Visual Studio 2019的开发计算机上,我安装了Net Core 3.1 x86 sdk版本(即.NET Core 32位版本)
在Visual Studio 2019构建之前,我们必须指定平台目标:"任何CPU ",因为如果我们指定" x86 ",那么当我们部署到IIS Server x86平台时,它会抛出一个奇怪的结果。在IIS中运行.NET Core Web API时出现500级错误。
我们正在尝试使用dotnet命令行发布.NET Core Web API应用程序。
D:\\AppCodeArena\\BlahBlahProject>dotnet publish -c Release
/p:Platform:"Any CPU" /p:EnvironmentName=UAT BlahBlahProject.csproj
--output D:\\IISDeployment\\Uploader.BlahBlahProjectMicrosoft (R) Build Engine version 16.6.0+5ff7b0c9e for .NET Core
Copyright (C) Microsoft Corporation. All rights reserved.MSBUILD : error MSB1006: Property is not valid. Switch: Platform:Any
CPU
不幸的是,它上面指出了
/p:Platform:"Any CPU"
无效吗?有人可以发布正确的dotnet publish ...命令,允许使用该命令为平台指定" Any CPU "吗?
或
是否仍然可以使用MSBuild命令行而不是
" dotnet publish "命令行,然后有人可以发布该操作吗?
我可以和
一起使用
1 | dotnet publish /p:Configuration=Release /p:Platform="Any CPU" /p:EnvironmentName=Myproject.csproj --output D:\\IISDeployment\\Uploader.BlahBlahProject |
当我使用-c -release时,它只是失败。
更新:
1 | dotnet publish /p:Configuration=Release /p:Platform="Any CPU" /p:EnvironmentName="UAT" BlahBlahProject.csproj --output DIISDeploymentUploader.BlahBlahProject |