asp.net - 如何正确地将目标框架更改为 .NET 4.0
问题描述
我在我的 Windows 7 机器上使用 MVC 5 和使用 Visual Studio 2017 的实体框架 6 构建了一个目标框架 .NET 4.6 的应用程序。我现在被告知我应该构建应用程序以 .NET 4.0 为目标,因为生产环境只安装了 4.0。所以我将目标框架更改为 4.0,但现在应用程序不会在我的机器上构建。
我猜我还需要降级 MVC 和 EF。这样做的正确方法是什么?
我应该安装哪些版本的 MVC 和 EF?
我需要对 web.config 进行任何手动更改吗?
解决方案
没有“正确”的方式,您有 3 个选项,按照我最喜欢的顺序:
- 更新服务器/安装 .net 4.5。
- 在一个新项目中重新开始,并确保您以 4.0 版本为目标:您可以复制大部分源文件。您可能会遇到一些编译器错误,但通常它们很容易修复。这样,您将受益于使用的模板与框架和包版本匹配。
- 在项目属性中重新定位使用的框架并替换已安装并希望获得最佳效果的包(有时您需要其他包)。希望您使用包管理器来安装这些包。也许该
update-packages
命令有帮助,但请务必先备份您的项目。一些包随着时间的推移变得过时,一些被重命名。这将导致问题。此外,某些方法/API 调用会有所不同,因此需要进行一些返工。
至于你的其他问题:
我猜我还需要降级 MVC 和 EF。这样做的正确方法是什么?
Use the nuget package manager
我应该安装哪些版本的 MVC 和 EF?
The nuget package manager will fix this for you.
我需要对 web.config 进行任何手动更改吗?
Sometimes: yes.
推荐阅读
- ios - 如何在 ios 的自定义 MapBox 导航控制器中添加 MBFloatingButton?
- javascript - 如何在 NodeJs 项目中设置时区?
- javascript - 通过 service-worker 的请求被执行两次
- javascript - Javascript:如何将文件位置保存到本地存储?
- .net - 使用正则表达式获取所有大写单词
- encryption - 组合两个密钥的最安全方法
- angular - Angular 4 路由问题
- php - 谷歌如何同时处理多网站登录
- javascript - 如何仅使用所需的键从另一个对象获取对象?
- python - 并行运行子进程命令