.Net Core 严重性 代码 说明 项目 文件 行 禁止显
描述
在.net core 3.1 项目发布时候,遇到这个错误。
问题
严重性 代码 说明 项目 文件 行 禁止显示状态
错误 “TransformWebConfig”任务意外失败。
System.Exception: AspNetCoreModule 不支持进程内托管。将 AspNetCoreModule 更改为至少 AspNetCoreModuleV2。
在
Microsoft.NET.Sdk.Publish.Tasks.WebConfigTransform.SetAspNetCoreHostingModel(String aspNetCoreHostingModelValue, String aspNetCoreModuleName, XElement aspNetCoreElement)
在
Microsoft.NET.Sdk.Publish.Tasks.WebConfigTransform.TransformAspNetCore(XElement aspNetCoreElement, String appName, Boolean configureForAzure, Boolean useAppHost, String extension, String aspNetCoreModuleName, String aspNetCoreHostingModelValue, String projectFullPath)
Microsoft.NET.Sdk.Publish.Tasks.WebConfigTransform.Transform(XDocument webConfig, String appName, Boolean configureForAzure, Boolean useAppHost, String extension, String aspNetCoreModuleName, String aspNetCoreHostingModel, String environmentName, String projectFullPath)
Microsoft.NET.Sdk.Publish.Tasks.TransformWebConfig.Execute()
在 Microsoft.Build.BackEnd.TaskExecutionHost.Microsoft.Build.BackEnd.ITaskExecutionHost.Execute()
在 Microsoft.Build.BackEnd.TaskBuilder.<ExecuteInstantiatedTask>d__26.MoveNext() WebApi 0
解决方案:
将web.config 文件中的 AspNetCoreModule 改为 AspNetCoreModuleV2
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<location path="." inheritInChildApplications="false">
<system.webServer>
<handlers>
<add name="aspNetCore" path="*" verb="*" modules="AspNetCoreModuleV2" resourceType="Unspecified" />
</handlers>
<aspNetCore processPath="%LAUNCHER_PATH%" arguments="%LAUNCHER_ARGS%" stdoutLogEnabled="false" stdoutLogFile=".\logs\stdout" />
<security>
<requestFiltering>
<requestLimits maxAllowedContentLength="2073741822" />
<!-- 1GB-->
</requestFiltering>
</security>
</system.webServer>
</location>
<system.web>
<httpRuntime executionTimeout="7250" maxRequestLength="409600" />
</system.web>
<!--<identity impersonate="true" userName="administrator" password="123456" />-->
</configuration>
<!--ProjectGuid: e8bb046f-cd62-4fe7-a00a-688daaee705d-->
发布错误.png
发布:
发布到 IIS上面的时候,要把 web.config 中的 AspNetCoreModuleV2 改为 AspNetCoreModule ,
或者直接在服务器上安装 AspNetCoreModuleV2 环境,具体网上有好多案例
可参考:https://blog.csdn.net/RainyLin/article/details/109216468