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 请求管道。
- 能够在 IIS、Nginx、Apache、Docker 上进行托管或在自己的进程中进行自托管。
- 定目标到 .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/
以上内容有任何错误或不准确的地方请大家指正,不喜勿喷!
本文版权归作者和博客园共有,欢迎转载。
但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
希望能够持续的为大家带来好的技术文章!想跟我一起进步么?那就【关注】我吧。
转载于:https://www.cnblogs.com/sopcce/p/10676385.html 来源:https://blog.csdn.net/weixin_30312557/article/details/95216051 免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作! |