.NET Core 8 MVC项目需手动添加Razor运行时编译包的原因咨询
问题原因分析
这种差异主要来自以下几个方面:
项目模板的预设配置不同
.NET 8正式版中,为了精简空MVC项目的初始体积,默认不再把Microsoft.AspNetCore.Mvc.Razor.RuntimeCompilation包作为内置依赖。而你课程里用的大概率是带示例内容的完整MVC模板,而非空模板——这类模板为了方便开发时实时预览Razor页面修改,默认已经包含了运行时编译的依赖和配置,所以不需要手动添加。创建项目时的选项差异
在Visual Studio创建.NET 8 MVC项目时,进入“高级”设置面板,会有一个「启用 Razor 运行时编译」的复选框。如果课程里的步骤勾选了这个选项,项目会自动在.csproj中添加对应的NuGet包引用,并在Program.cs中配置运行时编译;而你创建时没勾选这个选项,自然就需要手动补充这些内容。模板版本的细微差异
如果你课程里用的是.NET 8的预览版模板,当时的模板可能还默认保留了运行时编译的配置,但正式版发布后做了调整,进一步精简了空项目的默认依赖,这也会导致前后操作的差异。
内容的提问来源于stack exchange,提问作者klaudiaRajs
相关产品推荐
相关产品推荐

