原文:Choosing the Right .NET For You on the Server
作者:Daniel Roth
翻译:王健
校对:谢炀(Kiler)何镇汐许登洋(Seay)孟帅洋(书缘)

ASP.NET Core基于 .NET Core 项目模型,它支持构建能够运行在 Windows、Mac和 Linux 上的跨平台应用程序。当您构建一个 .Net Core 项目的时候,您可以选择一种 .NET框架来构建您的应用程序,.NET Framework (CLR)、 .NET Core (CoreCLR) 或者 Mono ? 应该选择哪一种 .NET框架,我们来看下每一种的优缺点吧。

.NET Framework

.NET Framework 是三个.NET框架中最知名和最成熟的。.NET Framework 是承载于Windows系统平台的全功能成熟框架。.NET Framework 的生态系统已经非常成熟,并且已经被使用超过了10年。.NET Framework 如今已经大量用于生产环境并为您创建的应用程序和类库提供最高级别的兼容性。

.NET Framework 只能运行在Windows系统上。它是一个拥有大量 API 并且发布周期漫长的框架。虽然 .NET Framework 的代码可供参考 ,但它不是一个活跃的开源项目。

.NET Core

.NET Core是一个模块化的运行时和类库实现,包括.NET Framework的一个子集。 .NET Core支持Windows、Mac以及Linux系统。.NET Core是由一组被称为 “CoreFX” 的库,和一个被称为 “CoreCLR” 的小的并被优化过的运行时。 .NET Core是开源的,所以你可以跟踪它的项目进度,并在 GitHub 上贡献代码。

CoreCLR 运行时 (Microsoft.CoreCLR) 和 CoreFX 库通过 NuGet 进行分发。.NET Core 被构建成组件化的库集合,因此,您可以在您的应用程序中根据需要,仅使用需要的 API 。您也可以在更受限的环境中运行基于.NET Core 的应用(如 ASP.NET Core on Nano Server)。

API 进行了更新,使其更好地组件化。这意味着现有的在 .NET Framework 中创建的库通常需要重新编译来使其运行在 .NET Core 中。.NET Core 的生态系统相对来说比较新,但是在流行的 .Net 组件包的支持下发展迅速,如 JSON.NET,AutoFac,xUnit.net 等等。

基于 .NET Core 的开发,可以使你在单一平台上开发的程序运行在多个平台上。

ASP.NET Core 中文文档 第三章 原理(17)为你的服务器选择合适版本的.NET框架的更多相关文章

  1. ASP.NET Core 中文文档 第三章 原理(6)全球化与本地化

    原文:Globalization and localization 作者:Rick Anderson.Damien Bowden.Bart Calixto.Nadeem Afana 翻译:谢炀(Kil ...

  2. ASP.NET Core 中文文档 第三章 原理(1)应用程序启动

    原文:Application Startup 作者:Steve Smith 翻译:刘怡(AlexLEWIS) 校对:谢炀(kiler398).许登洋(Seay) ASP.NET Core 为你的应用程 ...

  3. ASP.NET Core 中文文档 第三章 原理(13)管理应用程序状态

    原文:Managing Application State 作者:Steve Smith 翻译:姚阿勇(Dr.Yao) 校对:高嵩 在 ASP.NET Core 中,有多种途径可以对应用程序的状态进行 ...

  4. ASP.NET Core 中文文档 第三章 原理(2)中间件

    原文:Middleware 作者:Steve Smith.Rick Anderson 翻译:刘怡(AlexLEWIS) 校对:许登洋(Seay) 章节: 什么是中间件 用 IApplicationBu ...

  5. ASP.NET Core 中文文档 第三章 原理(3)静态文件处理

    原文:Working with Static Files 作者:Rick Anderson 翻译:刘怡(AlexLEWIS) 校对:谢炀(kiler398).许登洋(Seay).孟帅洋(书缘) 静态文 ...

  6. ASP.NET Core 中文文档 第三章 原理(10)依赖注入

    原文:Dependency Injection 作者:Steve Smith 翻译:刘浩杨 校对:许登洋(Seay).高嵩 ASP.NET Core 的底层设计支持和使用依赖注入.ASP.NET Co ...

  7. ASP.NET Core 中文文档 第三章 原理(11)在多个环境中工作

    原文: Working with Multiple Environments 作者: Steve Smith 翻译: 刘浩杨 校对: 孟帅洋(书缘) ASP.NET Core 介绍了支持在多个环境中管 ...

  8. ASP.NET Core 中文文档 第三章 原理(7)配置

    原文:Configuration 作者:Steve Smith.Daniel Roth 翻译:刘怡(AlexLEWIS) 校对:孟帅洋(书缘) ASP.NET Core 支持多种配置选项.应用程序配置 ...

  9. ASP.NET Core 中文文档 第三章 原理(8)日志

    原文:Logging 作者:Steve Smith 翻译:刘怡(AlexLEWIS) 校对:何镇汐.许登洋(Seay) ASP.NET Core 内建支持日志,也允许开发人员轻松切换为他们想用的其他日 ...

随机推荐

  1. C# 利用性能计数器监控网络状态

    本例是利用C#中的性能计数器(PerformanceCounter)监控网络的状态.并能够直观的展现出来 涉及到的知识点: PerformanceCounter,表示 Windows NT 性能计数器 ...

  2. 【接口开发】浅谈 SOAP Webserver 与 Restful Webserver 区别

    接口,强大,简单,交互,跨越平台 下面简单阐述这两大接口思想 一 REST: REST是一种架构风格,其核心是面向资源,REST专门针对网络应用设计和开发方式,以降低开发的复杂性,提高系统的可伸缩性. ...

  3. CoreCRM 开发实录——想用国货不容易

    昨天(2016年12月29日)发了开始开发的文章.本来晚上准备在 Coding.NET 上添加几个任务开始搞起了.可是真的开始用的时候才发现:Coding.NET 的任务功能只针对私有的任务开放.我想 ...

  4. iOS逆向工程之App脱壳

    本篇博客以微信为例,给微信脱壳."砸壳"在iOS逆向工程中是经常做的一件事情,,因为从AppStore直接下载安装的App是加壳的,其实就是经过加密的,这个“砸壳”的过程就是一个解 ...

  5. submit text3常用快捷键

    在网上找了一些submit text的快捷键: Ctrl+D 选词 (反复按快捷键,即可继续向下同时选中下一个相同的文本进行同时编辑)Ctrl+G 跳转到相应的行Ctrl+J 合并行(已选择需要合并的 ...

  6. DataTable 转换成 Json的3种方法

    在web开发中,我们可能会有这样的需求,为了便于前台的JS的处理,我们需要将查询出的数据源格式比如:List<T>.DataTable转换为Json格式.特别在使用Extjs框架的时候,A ...

  7. AFNetworking 3.0 源码解读 总结(干货)(上)

    养成记笔记的习惯,对于一个软件工程师来说,我觉得很重要.记得在知乎上看到过一个问题,说是人类最大的缺点是什么?我个人觉得记忆算是一个缺点.它就像时间一样,会自己消散. 前言 终于写完了 AFNetwo ...

  8. CSS 3学习——transform 2D转换

    首先声明一点,transform属性不为none的元素是它的定位子元素(绝对定位和固定定位)的包含块,而且对内创建一个新的层叠上下文. 注意:可以通过 transform-box 属性指定元素的那个盒 ...

  9. js参数arguments的理解

    原文地址:js参数arguments的理解 对于函数的参数而言,如下例子 function say(name, msg){ alert(name + 'say' + msg); } say('xiao ...

  10. 敏捷测试模式之Scrum及其实践

    一.    敏捷开发模式简介 敏捷是近年来软件研发领域很火的一个词,采用敏捷开发模式的研发团队是越来越多了,尤其是敏捷模式中的Scrum更是佼佼者大行其道,这表明敏捷模式确有其好处,能给企业带来效率的 ...