【ASP.NET Core MVC 入门须知】Net Core和Net Framework 的区别

 

 

 一、简单介绍html

 

从上面图中咱们能够看到.net  主要分为三个部分 .net FrameWork,.net Core ,Xamarinlinux

  • XAMARIN  主要用来构建APP的主要用的是C#语言
  • .NET Framework  这个是咱们如今常常用的,用这个能够建立windows应用程序还有web applications ,
  •                              如今你能够用它建立Winform ,UWP ,wpf 等相关的应用程序 ,web 方面就是Asp.net MVC webfrom,2002年发布
  • .NET Core   是微软推出的最新的开源的,跨平台的框架,用它能够建立的应用能够运行在MAC,Linux上 ,2016年6月27日

 

 

二、对比叫介绍,差别nginx

微软爸爸介绍:https://docs.microsoft.com/zh-cn/aspnet/core/?view=aspnetcore-2.2git

 

NET Core和.net framwork 各有优缺点,二者都不能取代对方,一下摘取自微软文档github

ASP.NET Core 具备以下优势:web

  • 生成 Web UI 和 Web API 的统一场景。
  • 针对可测试性进行构建。
  • Razor Pages 可使基于页面的编码方式更简单高效。
  • 可以在 Windows、macOS 和 Linux 上进行开发和运行。
  • 开放源代码和以社区为中心
  • 集成新式客户端框架和开发工做流。
  • 基于环境的云就绪配置系统
  • 内置依赖项注入
  • 轻型的高性能模块化 HTTP 请求管道。
  • 可以在 IISNginxApacheDocker 上进行托管或在本身的进程中进行自托管。
  • 定目标到 .NET Core 时,可使用并行应用版本控制。
  • 简化新式 Web 开发的工具。 

面向 .NET Framework 的 ASP.NET Core

ASP.NET Core 2.x 能够面向 .NET Core 或 .NET Framework。 面向 .NET Framework 的 ASP.NET Core 应用没法跨平台,它们仅在 Windows 上运行。 一般,ASP.NET Core 2.x 由 .NET Standard 库组成。 使用 .NET Standard 2.0 编写的应用可在 NET Standard 2.0 支持的任何位置运行。docker

 

与 .NET Standard 2.0 兼容的 .NET Framework 版本支持 ASP.NET Core 2.x:apache

  • 强烈建议使用 .NET Framework 4.7.1 及更高版本。
  • .NET Framework 4.6.1 及更高版本。

ASP.NET Core 3.0 以及更高版本只能在 .NET Core 中运行。 有关此更改的详细信息,请参阅 A first look at changes coming in ASP.NET Core 3.0(抢先了解 ASP.NET Core 3.0 即将推出的更改)。windows

 

面向 .NET Core 有如下几个优点,而且这些优点会随着每次发布增长。 与 .NET Framework 相比,.NET Core 的部分优点包括:服务器

  • 跨平台。 在 macOS、Linux 和 Windows 上运行。
  • 加强的性能
  • 并行版本控制
  • 新 API
  • 开源 

咱们正努力缩小 .NET Framework 与 .NET Core 的 API 差距。 Windows 兼容性包使数千个仅可在Windows运行的API 可在 .NET Core 中使用。 这些 API 在 .NET Core 1.x 中不可用。

 在如下状况,对服务器应用程序使用 .NET Core:

 

  • 用户有跨平台需求。
  • 用户正在面向微服务。
  • 用户正在使用 Docker 容器。
  • 须要高性能和可扩展的系统。
  • 需按应用程序提供并行的 .NET 版本。

 

在如下状况,对服务器应用程序使用 .NET Framework :

 

  • 应用当前使用 .NET Framework(建议扩展而不是迁移)。
  • 应用使用不可用于 .NET Core 的第三方 .NET 库或 NuGet 包。
  • 应用使用不可用于 .NET Core 的 .NET 技术。
  • 应用使用不支持 .NET Core 的平台。

 

最大的区别就是Net Core和Net Framework 再部署IIS是不一样的,

Net Framework 选择对应的应用程序版本

Net Core不须要选择,而且必须发布以后才能够。

【1】、必须设置 模块

反正你看不到 AspNetCoreModule 这个玩意的话, 运行确定就是有问题的。

 

 

 

 【2】必须选择托管,Net Core不须要Net Framework

应用程序池必须配置为“无托管代码”

 

【3】发布、部署

 

 

 

 

 

 

 

 

 

容器化将来是一种趋势,选择跨平台的。net core是一种趋势,如今能够入坑了。不过大神,此段话为本身备注打气,萌新不敢大声说话。

 

 

三、性能比较

 

性能作够了,处理能来同步更好更强

 

https://www.techempower.com/benchmarks/#section=data-r17&hw=ph&test=db

 

四、总结

 

一、跨平台用.net core 不想升级用.net framwork 

二、能用就行,毕竟如今还有大部分用 .net framwork 2.0的

 

 

相关文章:

 

【参考】简析.NET Core 以及与 .NET Framework的关系http://www.cnblogs.com/vipyoumay/p/5603928.html

【推荐】How to Deploy ASP.NET Core to IIS & How ASP.NET Core Hosting Works:https://stackify.com/how-to-deploy-asp-net-core-to-iis/

【推荐】ASP.NET Core Web API – IIS Deployment:https://code-maze.com/net-core-web-development-part16/

 

以上内容有任何错误或不许确的地方请你们指正,不喜勿喷!

本文版权归做者和博客园共有,欢迎转载。

但未经做者赞成必须保留此段声明,且在文章页面明显位置给出原文链接,不然保留追究法律责任的权利。

但愿可以持续的为你们带来好的技术文章!想跟我一块儿进步么?那就【关注】我吧。

相关文章
相关标签/搜索