1、简单介绍

从上面图中我们可以看到.net  主要分为三个部分 .net FrameWork,.net Core ,Xamarin

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

2、对比叫介绍,差异

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

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

ASP.NET Core 具有如下优点:

  • 生成 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 支持的任何位置运行。

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

  • 强烈建议使用 .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 即将推出的更改)。

面向 .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是一种趋势,现在可以入坑了。不过大神,此段话为自己备注打气,萌新不敢大声说话。

3、性能比较

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

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

4、总结

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

2、能用就行,毕竟现在还有大部分用 .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/

 

以上内容有任何错误或不准确的地方请大家指正,不喜勿喷!

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

但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。

希望能够持续的为大家带来好的技术文章!想跟我一起进步么?那就【关注】我吧。

【ASP.NET Core MVC 入门须知】Net Core和Net Framework 的区别的更多相关文章

  1. 005.Getting started with ASP.NET Core MVC and Visual Studio -- 【VS开发asp.net core mvc 入门】

    Getting started with ASP.NET Core MVC and Visual Studio VS开发asp.net core mvc 入门 2017-3-7 2 分钟阅读时长 本文 ...

  2. 观看杨老师(杨旭)Asp.Net Core MVC入门教程记录

    观看杨老师(杨旭)Asp.Net Core MVC入门教程记录 ASP.NET Core MVC入门 Asp.Net Core启动和配置 Program类,Main方法 Startup类 依赖注入,I ...

  3. ASP.NET Core MVC 入门到精通 - 3. 使用MediatR

    ASP.NET Core MVC 入门到精通 - 3. 使用MediatR 环境: .NET 5 ASP.NET Core MVC (project) 1. MediatR MediatR .NET中 ...

  4. asp.net core MVC 入门学习

    前言 .net core 已经更新到2.0以上的版本了,今天才开始正式接触,深为程序员,丢脸了,作为无所不能的IT人,我着手折腾一下这个跨平台的开发框架. (转载自百度百科).NET Core 是.N ...

  5. ASP.NET Core MVC 入门到精通 - 1. 开发必备工具 (2021)

    环境: .NET 5 ASP.NET Core MVC 1. .NET 5 作为一个资深.NET工程师,说句实话,.NET没落了,在国内更加的没落.之前做过8年node.js/前端,现如今又转回了.N ...

  6. ASP.NET Core MVC+Layui使用EF Core连接MySQL执行简单的CRUD操作

    前言: 本章主要通过一个完整的示例讲解ASP.NET Core MVC+EF Core对MySQL数据库进行简单的CRUD操作,希望能够为刚入门.NET Core的小伙伴们提供一个完整的参考实例.关于 ...

  7. ASP.NET Core MVC 2.x 全面教程_ASP.NET Core MVC 10. 使用EF Core

    支持的数据库:可以查看官方网站 https://docs.microsoft.com/en-us/ef/core/providers/ 安装了VS2017后会安装了LocalDB,验证localDB ...

  8. ASP.NET MVC5 + EF6 入门教程 (5) Model和Entity Framework

    一.创建Model MVC中的Model是用来给View提供显示数据的对象. 这里我们首先创建一个Model对象. 在解决方案资源管理器中右键点击Models文件夹,选择添加->类.添加一个名为 ...

  9. ASP.NET Core MVC 2.x 全面教程_汇总贴

    Reshaper快捷键盘 快速生成属性:prop Ctrl+. ASP.NET Core MVC 2.x 全面教程:https://www.bilibili.com/video/av38392956 ...

随机推荐

  1. thrift框架

    thrift是一个软件框架,用来进行可扩展且跨语言的服务的开发.它结合了功能强大的软件堆栈和代码生成引擎,以构建在 C++, Java, Python, PHP, Ruby, Erlang, Perl ...

  2. 78. Subsets (Back-Track, DP)

    Given a set of distinct integers, nums, return all possible subsets. Note: Elements in a subset must ...

  3. shader一般都是用工具调试的

    N卡的话用nvidia的nVidia FX Composer, A卡的话用ATI的render monkey 顶点着色器从何方拿到这些数据?在U3D环境下,答案是从绑定到game object中的Me ...

  4. mysql资源总结

    MySQL查询语句大全集锦 http://www.jb51.net/article/85889.htm linux下mysql命令大全 http://www.cnblogs.com/mfryf/arc ...

  5. java反射机制学习代码

    根据 http://www.iteye.com/topic/137944 文档进行学习 代码如下: package reflectTest; import java.lang.reflect.*; i ...

  6. 访问localhost的phpmyadmin出现访问被拒绝

    原因是:没有配置MySQL数据库密码. 1.打开D:\wamp\apps\phpmyadmin x.xx找到config.inc.php. 修改并保存: $cfg['Servers'][$i]['us ...

  7. 使用WindowsFormsApplicationBase实现引导界面

    1.需要添加对Microsoft.VisualBasic 引用, 2.准备frmMain,frmSplash两个窗口 说明:        frmSplash在主线程上建立,但是在独立线程上进行消息循 ...

  8. [GO]conext的使用

    package main import ( "context" "time" "net/http" "fmt" &quo ...

  9. ASIHTTPRequest-Cookie的使用[转]

    ASIHTTPRequest允许你使用全局存储来和所有使用CFNetwork或者NSURLRequest接口的程序共享cookie. 如果设置useCookiePersistence为YES(默认值) ...

  10. 测试用数据库表设计和SessionFactory

    本篇为struts-2.5.2和spring-3.2.0以及hibernate-4.2.21的整合开篇. 一.测试的数据库表. 用户.角色和权限关系表.数据库是Mysql5.6.为了考虑到一些特殊数据 ...