“ TransformWebConfig”任务意外失败-System.Exception:AspNetCoreModuleHostingModel属性的可接受值为

时间:2018-12-27 10:35:21

标签: asp.net-core

我收到““ 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ı ==========

6 个答案:

答案 0 :(得分:29)

我遇到了同样的问题并找到了解决方法

csproj文件中,找到以下行并删除。

<AspNetCoreHostingModel>InProcess</AspNetCoreHostingModel>

答案 1 :(得分:9)

.net core 2.2.104上存在相同的问题。将部分更新为此:

<AspNetCoreHostingModelV2>InProcess</AspNetCoreHostingModelV2>

注意 V2 的添加。

答案 2 :(得分:3)

@BarışBar提供的答案有效,但可能导致将来的错误。关于UpperCases有一个错误。只需用小写字母更改InProcess文件中的csproj

<AspNetCoreHostingModel>inprocess</AspNetCoreHostingModel>

据说该错误将在VS 2019中得到纠正。

InProcess or OutOfProcess

答案 3 :(得分:2)

在ASP.Net Core项目中,无需转换web.configs,因为所有内容均由appsettings.json文件按照约定进行处理。我建议禁用转换。来自https://docs.microsoft.com/en-us/aspnet/core/host-and-deploy/iis/?view=aspnetcore-2.2的文档:

  

要防止Web SDK转换web.config文件,请在项目文件中使用<IsTransformWebConfigDisabled>属性:

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

答案 4 :(得分:0)

我的.NET Core 2.2应用程序构建在Jenkins上失败,但在本地计算机上运行良好。 错误:错误MSB4018:“ TransformWebConfig”任务意外失败。

修复:从.csproj文件中删除以下行 <AspNetCoreHostingModel>InProcess</AspNetCoreHostingModel>

答案 5 :(得分:0)

只需将此行添加到您的web.config文件中

<handlers>
  <add name="aspNetCore" path="*" verb="*" modules="AspNetCoreModuleV2" resourceType="Unspecified" />
</handlers>