5 回答
TA贡献1880条经验 获得超4个赞
通过从 modules="AspNetCoreModuleV2" 中删除 V2 对我有用。请注意,我的问题与从 Visual Studio 运行 .net core web api 有关。IE Express 失败并显示代码 500,并且在调查描述“处理程序 'aspNetCore' 有一个错误模块..”的错误日志后,通过替换为以下内容解决了该问题。
<handlers>
<add name="aspNetCore" path="*" verb="*" modules="AspNetCoreModule" resourceType="Unspecified" />
</handlers>
TA贡献1826条经验 获得超6个赞
更新
这是一种使您的应用程序保持在 v2 之前的托管的解决方法。请参阅 alans 答案和我的评论以获得更完整的解决方案
原来的
我通过将以下代码块添加到.csprojWeb 应用程序来实现此功能。
<PropertyGroup>
<TargetFramework>netcoreapp2.2</TargetFramework>
<LangVersion>latest</LangVersion>
<AspNetCoreModuleName>AspNetCoreModule</AspNetCoreModuleName>
<AspNetCoreHostingModel>OutOfProcess</AspNetCoreHostingModel>
</PropertyGroup>
显然,您需要在继续进行时更新netcoreapp版本。这就是我能够让事情正常进行的方式。我不确定为什么仅仅安装 2.2 的托管包是不够的。
TA贡献1757条经验 获得超8个赞
我发布我的答案是为了节省其他人的时间,他们坚持同样的问题大约需要 1 小时。我的问题是我安装了不正确的托管 budle。如果您的应用程序使用 .Net Core 3.1,则必须使用链接“x64”下载它,而是使用下一页上的“Hosting bundle”链接:https ://dotnet.microsoft.com/download/dotnet-core /3.1
我的问题是我认为 x64 托管包位于链接“ x64 ”中,但事实并非如此。“ x64 ”链接不包含托管捆绑包,不会解决问题。应仅使用链接“ Hosting Bundle ”下载托管捆绑包:
以下文章对我理解这个问题非常有帮助:https ://dotnetcoretutorials.com/2019/12/23/hosting-an-asp-net-core-web-application-in-iis/
- 5 回答
- 0 关注
- 1525 浏览
添加回答
举报