NETStandard,NETFx,Mono,NETCore,ASPNetCore 之间关系的整理
因为现在很多人对这几者之间的关系还不甚了解,这里根据我所知来做一个大概的介绍......
.NET Standard:
.NET标准,只要符合这个标准实现类库,即可在支持此标准的Runtime上运行
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
.NET Framework:
完整的.NET,只支持Windows,不同版本支持的.NET Standard不同,最新支持.NET Standard 2.x
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
Mono:
Mono即为.NET Framework的跨平台完整实现(除去WPF/WCF等少部分未实现),支持 X64/X86/部分ARM 平台,
同样支持.NET Standard,不同版本支持的.NET Standard不同,最新支持.NET Standard 2.x,
注:
使用Mono对现有项目进行跨平台需要注意项目所引用的库是否使用了Windows独有的功能/API等
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
.NET Core:
.NET跨平台实现的版本,支持X64/X86/部分ARM平台,虽说是.NET跨平台实现的版本,但和原来的.NET Framework实际有极大的不同,
包括不同的底层实现(如 RyuJIT,Core CLR,LLILC 等),性能更加优越等等,
并且.NET Core也是完全对.NET Standard的支持,最新支持.NET Standard 2.x
(有兴趣的小伙伴可以搜一搜博客园中对.NET Core的性能测试文章)
注:
依托于.NET Core的应用程序/WEB程序可直接发布内嵌Runtime的版本,无需额外安装Runtime环境
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
ASP.NET Core(MVC/WebAPI等等):
最新的.NET WEB开发框架,完全按照.NET Standard实现,完全的模块化安装(按需安装模块),
没有ASP.NET的System.Web.dll这一大坨的拖累,性能优于原有ASP.NET(MVC/WebAPI)(有兴趣的小伙伴可以测试一下),
同样,因为是完全按照.NET Standard实现的WEB框架,
所以可运行在: .NET Framework , Mono , .NET Core 上,
注:
由于至今ORACLE未出.NET Core的驱动,并且 .NET Core 现有第三方类库较少,
所以可考虑使用.NET Framework/Mono作为 ASP.NET Core 的运行环境
(但使用第三方库需要注意是否调用了Windows独有功能/API等)
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
以上.....如有不对还望诸位多多指正....别误导了别人.....
(由 玩双截棍的熊猫 2017-11-30 整理发布,转载请注明出处和链接以及作者名字...)
NETStandard,NETFx,Mono,NETCore,ASPNetCore 之间关系的整理的更多相关文章
- 云计算三种服务模式SaaS、PaaS和IaaS及其之间关系(顺带CaaS、MaaS)
云计算架构图 很明显,这五者之间主要的区别在于第一个单词,而aaS都是as-a-service(即服务)的意思,这五个模式都是近年来兴起的,且这五者都是云计算的落地产品,所以我们先来了解一下云计算是什 ...
- 【转】Oracle - 数据库的实例、表空间、用户、表之间关系
[转]Oracle - 数据库的实例.表空间.用户.表之间关系 完整的Oracle数据库通常由两部分组成:Oracle数据库和数据库实例. 1) 数据库是一系列物理文件的集合(数据文件,控制文件,联机 ...
- 2.java面向对象类与类/类与对象之间关系详解
继承.实现.依赖.关联.聚合.组合的联系与区别 下面的内容很基础,同时也很简单,但是也很重要. 继承 指的是一个类(称为子类.子接口)继承另外的一个类(称为父类.父接口)的功能,并可以增加它自己的新功 ...
- TLS与SSL之间关系——SSL已经被IEFT组织废弃,你可以简单认为TLS是SSL的加强版
TLS与SSL之间关系 原文地址:SSL vs. TLS - What's the Difference? from:https://juejin.im/post/5b213a0ae51d4506d4 ...
- Excel Open Xml中CellStyleXfs,cellStyle,cellXfs之间关系的总结
最近这几个东东打交道了几天,总算是弄明白了,综合多个帖子,现在总结如下: 在创建stylesheet时,必须创建fonts,Fills,Borders 和cellXfs(CellFormats)四个节 ...
- 类之间关系理解:组合>聚合>关联>依赖;实现,继承
类之间关系理解:组合>聚合>关联>依赖:实现,继承 1. 从类之间的关系来看,不外乎以下几种 组合>聚合>关联>依赖:实现,继承 且可以分为以下两类: (1)实现, ...
- 深入了解Looper、Handler、Message之间关系
深入了解Looper.Handler.Message之间关系 前言及简介 上个星期我们整个项目组趁着小假期,驱车去了江门市的台山猛虎峡玩了两个多钟左右极限勇士全程漂流,感觉真得不错,夏天就应该多多玩水 ...
- Hibernate_day03--课程安排_表之间关系_一对多操作
Hibernate_day03 上节内容 今天内容 表与表之间关系回顾(重点) Hibernate的一对多操作(重点) 一对多映射配置(重点) 一对多级联操作 一对多级联保存 一对多级联删除 一对多修 ...
- 类与类之间关系,用C#和JavaScript体现
前言 在面向对象中,类之间的关系有六种,分别是: 关联关系(Association) 泛化关系(Generalization) 依赖(Dependency) 聚合(Aggregation) 组合(Co ...
随机推荐
- eclipse环境下,java操作MySQL的简单演示
首先先通过power shell 进入MySQL 查看现在数据库的状态(博主是win10系统) 右键开始,选择Windows powershell ,输入MySQL -u用户名 -p密码 选择数据库( ...
- 修改Oracle【12C】字符集
select userenv('language') from dual; //查看系统字符集编码 select * from nls_database_parameters where parame ...
- JS模拟实现封装的三种方法
前 言 继承是使用一个子类继承另一个父类,那么子类可以自动拥有父类中的所有属性和方法,这个过程叫做继承! JS中有很多实现继承的方法,今天我给大家介绍其中的三种吧. 1.在 Object类上 ...
- <c:forEach items="${list}" var="tt" varStatus="status"> 的相关大小长度
<c:forEach items="${list}" var="tt" varStatus="status"> ${status ...
- MongoDB关系与数据库引用
MongoDB关系: MongoDB 的关系表示多个文档之间在逻辑上的相互联系.文档间可以通过嵌入和引用来建立联系. 1. 嵌入关系: 形式:把一个文档嵌入到另一个文档中. 优点:数据保存在单一的文档 ...
- Linux系统EXT文件系统
分区格式化(Linux创建文件系统):(假设需要格式化的分区为/dev/sdb1) 1. ext2文件系统和ext3文件系统的区别: ext2不支持日志文件系统,不会产生日志文件,ext3则会产生日志 ...
- [译]ASP.NET Core 2.0 网址重定向
问题 如何在ASP.NET Core 2.0中实现网址重定向? 答案 新建一个空项目,在Startup.cs文件中,配置RewriteOptions参数并添加网址重定向中间件(UseRewriter) ...
- net start mongodb 服务名无效解决方案
net start mongodb 服务名无效 或者 net start mongodb 发生错误5,拒绝访问.是因为没有用管理员权限运行cmd. 解决方案:在window中,在搜索框输入cmd后,在 ...
- JavaScript判断变量数据类型
一.JS中的数据类型 1.数值型(Number):包括整数.浮点数. 2.布尔型(Boolean) 3.字符串型(String) 4.对象(Object) 5.数组(Array) 6.空值(Null) ...
- mouseover事件mouseenter事件
1. mouseover:会在鼠标进入该元素或者该元素的子元素时触发 mouseenter:只在鼠标进入该元素时触发 mouseout:在鼠标移出该元素或则该元素的子元素时触发 mouseleave: ...