.Net Framework 和 .Net Core的区别

您所在的位置:网站首页 囡的读音和意思 .Net Framework 和 .Net Core的区别

.Net Framework 和 .Net Core的区别

2024-06-08 00:59| 来源: 网络整理| 查看: 265

.Net Framework 和 .Net Core的区别 1. .net 平台简介

.net 平台主要分为三个部分(.net 5 中据说会大一统,这我抛开.net 5了):.net Framework 、 .net Core 和 xamarin

.net Framework : 2002年发布,现在很多公司都在使用,可以开发:

window桌面程序:winform、UWP、wpf等

web应用程序:Asp.Net webform、Asp.Net MVC

.net Core : 2016年6月27号发布,是微软最新退出开源的、跨平台的平台,可以用来创建运行在mac、Linux上的应用程序

xamarin : 主要用来构建手机APP,主要使用的语言是C#语言(但是因为使用人数不多,所以可参考的案例较少)

1.1 在.net core 和 .net framework 之间如何选择

.net core 与 .net framework 都可以写web程序,两者有很多共享的组件(ef 库以及其他库都可以在.net framework或.net core上运行),两者之间是可以共享代码的,但两者是存在根本的差异,这需要根据实现的目标进行选择

选择.net core

有跨平台需求

正在面向微服务

正在使用Docker容器

需要高性能和可扩展性的系统

选择.net framework

当前项目使用的是.net framework(建议扩展而不是迁移)

开发的程序中使用到在.net Core中暂不支持的第三方.net 库或者NuGet包

使用到.net Core中暂不支持的技术(例如在.net core 2.x的时候是不支持winfrom的,.net core 3.x已经支持了)

WCF服务的实现目前在.net core 无法使用

Asp.Net Web窗体应用程序目前也是只可以在.net framework中使用

1.2 在.net core和.net framework中共享库

因为 .net core 是一个新兴的系统生态系统,所以有些之前在 .net framework 中使用的库在 .net core 中是无法使用的,为了尽快弥补这一空缺,Microsoft 引入了.net standard 以提供在微软生态下的公共标准,意思就是你可以创建直接用于 .net core 或 .net framework 的库(甚至包括 xamarin )。只要确保 .net standard 库的 NuGet 包添加到.net 应用中,就可以使用了。

.net standard 可以看作是可移植类库 PCL 的后继者,简化了针对不同平台的业务。在 PCL 基于平台能力的配置中,.net Standard 提供了精心选择的 API 集。

但是 .net Standard 不同的版本适配 .net core 或 .net framework 版本也是不同的,这感觉就像走了DLL地狱,来了 .net Standard 地狱

img

asp.net core 2.x 由 .net Standard 库组成,所以同时支持 .net core 运行和 .net framework 运行

 

文中使用到了其他博客提到的一些内容:

https://www.jianshu.com/p/78c7590674d4

https://www.cnblogs.com/itzhangxp/p/8322364.html

https://blog.csdn.net/weixin_30312557/article/details/95216051

微软官方文档:https://docs.microsoft.com/zh-cn/dotnet/standard/choosing-core-framework-server?toc=%2Faspnet%2Fcore%2Ftoc.json&bc=%2Faspnet%2Fcore%2Fbreadcrumb%2Ftoc.json&view=aspnetcore-2.2

https://www.cnblogs.com/haogj/p/9220653.html

 

 



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3