【发布时间】:2018-06-18 13:19:46
【问题描述】:
我想将我们当前针对 .net 框架 4.6.1 的应用程序之一降级到较低版本 4.5.2。 此应用程序有许多依赖项目和几个随 Nuget 一起安装的库。以下是我降级的步骤。
- 将应用程序的每个项目和所有依赖项目都转换为目标 4.5.2
-
运行以下命令从 Nuget 卸载并重新安装所有依赖包。
更新包-重新安装
此步骤不是必需的,但可以肯定的是,我删除了 packages 文件夹,然后在我构建解决方案时允许 Visual Studio 再次下载它。
当我发布站点或使用 TFS 创建构建并将其部署到 IIS 并运行它时,在完成上述所有步骤后,我得到以下错误。
.NET Runtime version : 4.0.30319.36373 - This application could not be started.This application requires one of the following versions of the .NET Framework:
.NETFramework,Version=v4.6
Do you want to install this .NET Framework version now?
【问题讨论】:
-
请检查 web.config 中的 httpRuntime 是否有正确的 .NET 版本作为它的“targetFramework”
-
httpRuntime 和编译都有正确的目标框架集
-
见Weird Error Upgrading ASP.NET MVC from 4 to 5。由于不同版本化组件的所有排列,Visual Studio 没有适当的“升级”或“降级”功能 - 确保所有
.csproj、Web.config和packages.config同步的唯一解决方案是手动。 -
问题最终是因为在4.6版本的web.config中添加了system.codedom编译器部分,当版本更改为4.5.2时没有更新。在我删除该部分后,它开始为我工作