首页 > 解决方案 > “TransformWebConfig”任务意外失败 - System.Exception: AspNetCoreModuleHostingModel 属性的可接受值是

问题描述

我明白了

'“TransformWebConfig”任务意外失败。System.Exception:AspNetCoreModuleHostingModel 属性的可接受值为“InProcess”或“OutOfProcess”。

为 win-x64 环境发布 ASP.NET Core 2.2.0 应用程序(实际上是包含的示例应用程序)时出错。Visual Studio 2017 和 2019 都给出了相同的错误。我正在使用 Windows 10。我应该怎么做才能解决这个问题?发布输出的最后一部分是:

c:\users\engin\source\repos\NetCoreWebApplication2\NetCoreWebApplication2\obj\Release\netcoreapp2.2\win-x64\PubTmp\Out\
C:\Program Files\dotnet\sdk\2.2.200-preview-009648\Sdks\Microsoft.NET.Sdk.Publish\build\netstandard1.0\TransformTargets\Microsoft.NET.Sdk.Publish.TransformFiles.targets(49,5): Hata MSB4018: "TransformWebConfig" görevi beklenmedik biçimde başarısız oldu.
System.Exception: The acceptable value for AspNetCoreModuleHostingModel 
 property is either "InProcess" or "OutOfProcess".
   konum: Microsoft.NET.Sdk.Publish.Tasks.WebConfigTransform.TransformAspNetCore(XElement aspNetCoreElement, String appName, Boolean configureForAzure, Boolean useAppHost, String extension, String aspNetCoreModuleName, String aspNetCoreHostingModel)
   konum: Microsoft.NET.Sdk.Publish.Tasks.WebConfigTransform.Transform(XDocument webConfig, String appName, Boolean configureForAzure, Boolean useAppHost, String extension, String aspNetCoreModuleName, String aspNetCoreHostingModel, String environmentName)
   konum: Microsoft.NET.Sdk.Publish.Tasks.TransformWebConfig.Execute()
   konum: Microsoft.Build.BackEnd.TaskExecutionHost.Microsoft.Build.BackEnd.ITaskExecutionHost.Execute()
   konum: Microsoft.Build.BackEnd.TaskBuilder.<ExecuteInstantiatedTask>d__26.MoveNext()

2 Derleme başarısız oldu. Daha fazla ayrıntı için çıktı penceresini denetleyin.
========== Oluşturma: 1 başarılı, 0 başarısız, 0 güncel, 0 atlandı ==========
========== Yayın: 0 başarılı, 1 başarısız, 0 atlandı ==========

标签: asp.net-core

解决方案


我建议完全禁用 web.config 转换。在 ASP.Net Core 项目中,您可能不需要转换 web.configs,因为提供环境变量是按照appsettings.[Environment].json文件约定处理的。

来自https://docs.microsoft.com/en-us/aspnet/core/host-and-deploy/iis/?view=aspnetcore-2.2的文档:

要防止 Web SDK 转换 web.config 文件,请使用文件中的<IsTransformWebConfigDisabled>属性.csproj

<PropertyGroup>
   <IsTransformWebConfigDisabled>true</IsTransformWebConfigDisabled>
</PropertyGroup>

推荐阅读