加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

c# – 降级.net 4.5应用程序到4.0

发布时间:2020-12-15 06:36:53 所属栏目:百科 来源:网络整理
导读:我想将.net库从框架版本4.5降级到.net 4.0. 我有几个libs安装使用nuget: Microsoft.AspNet.WebApi.Client和它的依赖关系: Newtonsoft.Json System.Net.Http(Microsoft .Net 4 HTTP客户端库) 我做以下: 在我的解决方案中的每个项目的设置中,我将目标框架设
我想将.net库从框架版本4.5降级到.net 4.0.

我有几个libs安装使用nuget:

> Microsoft.AspNet.WebApi.Client和它的依赖关系:
> Newtonsoft.Json
> System.Net.Http(Microsoft .Net 4 HTTP客户端库)

我做以下:

>在我的解决方案中的每个项目的设置中,我将目标框架设置为4.0.之后,我尝试重建我的解决方案,但当然没有成功,因为错误类型或命名空间名称“Newtonsoft”找不到(你缺少一个using指令或程序集引用?),HTTP客户端库
>使用nuget ui manager我删除了依赖关系并尝试重新安装.但是有一个错误无法安装软件包’Microsoft.AspNet.WebApi.Client 5.1.1′.您正在尝试将此程序包安装到一个目标为“.NETFramework,Version = v4.0”的项目中,但是
包不包含与该框架兼容的任何程序集引用或内容文件.有关更多信息,请联系包作者.

我的问题是:我可以降级这个项目吗,或者我应该用一些支持.net 4替换这些lib,并重写一些代码部分?

解决方法

.NET 4.5是.NET 4.0的就地升级,这意味着CLR是相同的,但是添加了新的库,以及错误修复和性能改进,并且都是
指向.NET CLR 4.

在您的情况下,由于.NET 4.5已经安装,所以4.5更新完全取代了.NET 4.0运行时.

即使您将项目更改为.NET 4.0,内部使用的库仍然指向4.5,但仅限于可用于4.0的行为,但行为可能与您不同
期待纯.NET 4.

所以为了将你的项目从4.5降级到4.0,我同意你的意见,你需要:

>将.NET框架重新安装到.NET 4(如果您不再需要.NET 4.5)
>更改项目指向.NET 4
>重写.NET 4不支持的部分代码
(例如在您的情况下,Microsoft.AspNet.WebApi.Client 5.1.1来自WebApi2
.NET 4.5,您需要将其降级为使用.NET 4提供的方式
)

Hanselman和Rick已经很好地解释了.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读