asp.NET简介

ASP.NET Core 简介

.NET Core 是 .NET Framework 的新一代版本,是微软开发的第一个具有跨平台 ( Windows、Mac OSX 、Linux ) 能力的应用程序开发框

ASP.NET Core 是 Microsoft 新开发的,基于 .NET Core 的 Web 开发框架

ASP.NET Core 是对 ASP.NET 的重新设计,变得快速,灵活,现代,并且可以跨不同平台工作。

如果你之前已经接触过 ASP.NET,有过任何 MVC 或 Web API 的经验,那么你会有很强烈的熟悉感。

在本教程中,我们将会学习如何使用 ASP.NET Core 开发网页应用程序, 创建、编辑和查看数据库中的所有数据

ASP.NET 简史

ASP.NET 设计之初,就为 Web 而生,也自那时起,该框架经历了一个稳步的演变,并最终将我们引导至其最新的 ASP.NET Core 2.1 版本

ASP.NET 的演变史,其实就是一部 Web 框架的演变史的完全版,也是过去这么多年互联网的发展史

  1. ASP.NET Core 2.1 不是 ASP.NET 4.x 的延续,或者这么说, ASP.NET Core 1.0 不是 ASP.NET 4.6 的延续
  2. ASP.NET Core 是一个全新的 Web 框架,它与 ASP.NET 并行发展
  3. ASP.NET Core 是对 ASP.NET 的重新设计,更小,也更模块化
  4. 虽然能从 ASP.NET Core 中看到很多 ASP.NET 的熟悉身影,但这并不完全一样, ASP.NET Core 是对 ASP.NET 环境的一个重大改变

什么是 ASP.NET Core?

  1. ASP.NET Core 是一个由微软创建的,用于构建 web 应用、API、微服务 的 web 框架。它使用常见的模式,诸如 MVC(Model-View-Controller)、依赖注入,和一个由中间件构成的请求处理管线。它基于 Apache 2.0 许可证开放源码,就是说,源代码可以自由获取,并且欢迎社区成员以 缺陷修复 和 新功能提交 的方式进行贡献。
  2. ASP.NET Core 运行在微软的 .NET 运行时库上,类似于 Java 的 虚拟机(JVM)或者 Ruby 的解释器。有几种语言(C#,Visual Basic,F#)可以用来编写 ASP.NET Core 程序。C# 是最常见的选择,我在本书中也会采用它。你可以在 Windows、Mac,和 Linux 上构建并运行 ASP.NET Core 应用。

ASP.NET Core 的优点

ASP.NET Core 具有以下优点:

  1. ASP.NET Core 有着大量的体系结构更改,这些更改使得 ASP.NET Core 更精简和更模块化
  2. 模块化的设计,使得 ASP.NET Core 不再基于 System.Web.dll ,而是基于一组精细且充分考虑的 NuGet 包
  3. ASP.NET Core 允许我们优化应用程序,只包含必要的 NuGet 包
  4. 更为精简的应用程序可以带来更高的安全性,更少的维护,更好的性能以及更低的成本

使用 ASP.NET Core ,我们可以获得以下好处:

  1. 能在 Windows,Mac 和 Linux 上构建和运行跨平台的 ASP.NET 应用程序
  2. 使用 ASP.NET Core 可以构建和并行运行版本化的应用程序
  3. 新的工具简化了现代 Web 应用程序的开发
  4. 统一的方式构建 Web UI 和 Web API
  5. 云环境配置
  6. 内置依赖注入
  7. 使得 Razor 标记更接近原声 HTML 的标签助手
  8. 应用程序即可以在 IIS 中运行,也可以在自己的进程中运行
  9. 又一个 web 框架,需求何在?
  10. 现存的 web 框架选项已经很多了:Node/Express、Spring、Ruby on Rails、Django、Laravel 等等,数不胜数。ASP.NET Core 又有什么可取之处呢?
  • 速度 ASP.NET Core 很快。因为 .NET Core 是编译运行的,执行速度远高于解释执行的语言,比如 Javascript 或者 Ruby、ASP.NET Core 也已经为多线程和异步任务作了专门的优化。与使用 Node.js 写的代码相比,执行速度高出 5-10 倍是很正常的。
  • 生态 ASP.NET Core 可能初出茅庐,但 .NET 却已久经考验。在 NuGet(.NET 的包管理系统,类似 npm、Ruby gems,或者 Maven)上有成千上万的软件包。有现成的包可用来完成 JSON 反序列化、数据库连接、PDF生成,或者几乎你能想到的任何需求。
  • 安全性 微软的开发团队很注重安全性,ASP.NET Core 的构建就是为彻底的安全性。它已经自动处理了净化输入数据和跨域伪造请求(CSRF),你就不用操心这些了。你同时还享有 .NET 编译器的静态类型检测的优势,它像个时刻警惕着,还有些强迫症的审校者。这样,在使用一个变量或者某些数据时,那些无意识的错误就插翅难逃。
  • 作为对比,这里要指出, .NET Framework 是另一个 .NET标准 的实现,它只能运行在 Windows 上。在 .NET Core 出现并把 .NET 推向 Mac 和 Linux 之前,它是唯一的 .NET 运行时库。 ASP.NET Core 也可以跑在 Windows 专用的 .NET Framework 上,但我不会过多涉及这个主题。
  • 如果你已经被这些命名搞糊涂了,别发愁!咱们马上就要写代码进行实践了。
  • .NET Core 和 .NET 标准
  • 你可能还会听说 .NET Core 和 .NET标准,这些命名有些混乱,所以在此做一简短的释疑:
  • .NET 标准 是一个平台无关的接口,它定义了特性和 API。值得指出的是,.NET 标准并不等同于任何实际的代码或者功能,仅仅是 API 的定义。.NET 标准现存多个不同的“版本”或者说级别,反映出提供 API 的数量(或者说 API 所覆盖的广度)。比如 .NET标准2.0 的 API 数量比 .NET标准1.5 多,后者的 API 又比 .NET标准1.0 多。
  • .NET Core 是可安装在 Windows、Mac或者Linux上的 .NET 运行时库。它在各个操作系统上,使用对应的平台相关代码实现了定义于 .NET 标准中的 API。你将要把它安装到机器上,用来构建和运行 ASP.NET Core 应用程序。
  • .NET Core与 .NET Framework 相比优势包括: 跨平台、提高性能、并行版本控制、新API、开源。目前NET Framework 还不会被 .NET Core 代替。Core会试图缩小二者在实现上的差距,下表将 ASP.NET Core 与 ASP.NET 4.x 进行比较:
  • ASP.NET Core ASP.NET 4.x 针对 Windows、macOS 或 Linux 进行生成 针对 Windows 进行生成 Razor 页面是在 ASP.NET Core 2.x 及更高版本中创建 Web UI 时建议使用的方法 使用 Web 窗体、SignalR、MVC、Web API、WebHooks 或网页 每个计算机多个版本 每个计算机一个版本 比 ASP.NET 4.x 性能更高 良好的性能 选择 .NET Framework 或 .NET Core 运行时 使用 .NET Framework 运行时
  • 运用场景
  • (1) 在什么情况下要求使用 .NET Core包括: 用户有跨平台需求、用户正在面向微服务、用户正在使用 Docker 容器、需要高性能和可扩展的系统、需按应用程序提供并行的 .NET 版本。
  • (2) 在什么情况下使用.NET Framework包括: 当前使用 .NET Framework(建议扩展而不是迁移)、不可用于 .NET Core 的第三方 .NET 库或 NuGet 包、不可用于 .NET Core 的 .NET 技术、不支持 .NET Core 的平台。
  • 不可用于 .NET Core的.NET技术包括:不能用于 ASP.NET Web 窗体、WCF 服务的实现(将来会考虑在Core上实现)、工作流相关的服务。
  • 欢迎添加个人微信号:Like若所思。
  • 欢迎关注我的公众号,不仅为你推荐最新的博文,还有更多惊喜和资源在等着你!一起学习共同进步!

ASP.NET Core 简介

声明:本网页内容旨在传播知识,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:dandanxi6@qq.com

(0)
上一篇 2023年 8月 28日 上午8:56
下一篇 2023年 8月 28日 上午9:02

相关推荐

  • 百度网盘链接阿里网盘可以收吗

    最近搞到一款可以检测阿里云网盘和百度云网盘链接是否失效的工具。 经常我们在网上会找很多资源,但是发现找回来的资源链接经常性的失效了,这就白白浪费了很多时间。 有今天这款工具,就可以…

    2023年 5月 17日
  • 微信清理垃圾文件可以清理吗,微信占用空间十几g找不到垃圾

    大多数人的手机空间满了都是因为微信没有及时清理。今天我就来告诉大家如何高效清理微信垃圾文件。它一次可以清理几千兆字节,这个功能隐藏得太深了。 方法一:清除缓存垃圾 返回总界面,点击…

    2023年 2月 28日
  • 正晚点列车查询,列车正晚点实时查询

    记者从中国铁路客户服务中心获悉,为了便于广大旅客春运出行,“12306”手机APP自2月3日起新增列车正晚点查询服务。旅客可通过“铁路12306”手机APP选择“我的12306”中…

    互联网 2022年 12月 23日
  • 今日头条创作新手,希望得到大家的关注

    刚刚加入今日头条创作中心,以前真的不懂那么多人在头条发视频,电视,文章都是图什么,偶然的一次抖音直播中了解到自媒体,听主播讲了发影视追剧播放量高了还有收益,这也太简单了,只是需要一…

    2023年 3月 20日
  • 支付宝绑定银行卡要关闭这个设置

    微信和支付宝作为我们日常生活中使用最频繁的支付工具,因为和我们的财产有关,所以有些设置、开关在开启时,都需要非常注意。尤其是支付宝,管理我们大部分的钱财,那么支付宝绑定了银行卡的用…

    2023年 1月 21日
  • 电影院无线密码是多少

    今年春节档,多部电影吸引了市民们的注意。可是最近,今年82岁高龄的市民顾老伯向新民晚报记者投诉:前不久,他前往位于浦东新区浦建路富荟广场内的明星时代影城时,竟发现无法线下直接购买电…

    2023年 7月 12日
  • 网易云音乐怎么添加桌面小组件(网易云密友小组件大小怎么调节)

    近期,网易云音乐上线桌面音乐分享小组件“音乐密友”,该功能将支持用户直接分享歌曲分享至好友手机桌面。通过桌面小组件,用户无需打开手机App就可在手机桌面查看好友分享的音乐、图片、心…

    2023年 3月 24日
  • 软文文案怎么写吸引人,文案软文怎么写吸引人

    在网络比较发达的现在,商业软文成为目前很多企业都在使用的一种推广手段,好的商业软文不仅可以提高客源,增大人流量,也能更好地助力企业快速发展,那么高质量的软文究竟应该如何写呢? 1、…

    2023年 6月 14日
  • 代码放在github安全吗,github使用教程怎么写代码

    1 Github是什么 在很多人的印象中,GitHub主要是程序员写代码会使用到的工具。事实上,GitHub最主要的特性是版本管理和协同工作,这意味着不仅是程序员,非技术人士也可以…

    2023年 7月 26日
  • 海贼王十大最强航海士娜美,海贼王中最强的人娜美

    很多动漫都会将妹子的胸部部位画的非常大,因为这样更能讨得更多观众的喜欢,有些角色更是超出了科学的范畴,对于这个大小,也有投票的排名,3500位日宅网友投票,娜美竟是第一名。 第一名…

    2023年 7月 2日