陈晓猫

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: :: 管理 ::
  364 随笔 :: 0 文章 :: 130 评论 :: 126万 阅读
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

WIN7原生的.net是2.0和3.5,打开和关闭windows功能里面可以看到。
另外C:\Windows\Microsoft.NET\Framework下面也能看到。
.net framework1.0 1.1底层的CLR1.0 1.1早已被微软抛弃.
WIN7里面附带的.NET 2.0 3.5底层的CLR都是2.0的。
WIN8 10里面附带的.NET4.x framework底层的CLR都是4.0的,他们也附带了.net 2.0 3.5(CLR2.0),需要你在打开和关闭windows功能里面开启。
基于不同版本的CLR开发的程序不可能通用。同一个CLR版本下开发的程序,如果没有采用公用的程序集API,也不一定能够通用。
所以.net4.5.1开发的程序,他会提示你需要安装.net4.5.1,必须要CLR4.0,也就是需要安装.net4.5.1framework。
windows的.net framework非常蛋疼,基本没有什么兼容性,更别提什么跨平台,一个.net程序如果在不同的CLR下开发,在WIN7 8 10上兼容性都难以保证,必须要“运行屎”,“带屎运行”才行,.net运行屎对系统速度有可以感觉到的拖累。

打个不一定太恰当但是很形象的比喻:
CLR1.0 1.1就好比马路,上面只能跑一般的马车.NET1.0 1.1,微软觉得他们不行,于是就有了CLR2.0。
CLR2.0就好比公路,公路上可以跑小汽车.NET2.0、中巴车.NET3.5,微软觉得他们装的人还是太少,于是就有了CLR4.0。
CLR4.0就好比铁路,铁路上可以跑蒸汽机车.NET4.0、内燃机车.NET4.5、电力机车.NET4.6 4.7,微软觉得装的人挺多的。
微软又觉得,各种车光在美国跑不行,还要能在中国跑,这就叫做.NET跨平台。
随着java技术如日中天,微软觉得光卖车还是不行,还要转让技术让更多的厂家来玩,这就叫做.NET开源。
但是要想把小汽车、中巴车开上铁路轨道,那就很难咯。。。因为他们底层的平台CLR不同。
微软又发现,在铁路上跑的蒸汽机车、内燃机车、电力机车发动机虽然不通用,但是他们都可以装一样的空调,这就叫做兼容。 

posted on   陈晓猫  阅读(3494)  评论(0编辑  收藏  举报
编辑推荐:
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 2025年我用 Compose 写了一个 Todo App
· 张高兴的大模型开发实战:(一)使用 Selenium 进行网页爬虫
历史上的今天:
2015-05-08 判断手机连接的是fdd还是tdd的办法
点击右上角即可分享
微信分享提示