ASP.NET Core简介

ASP.NET Core是一个跨平台的高性能开源框架,用于生成启用云且连接Internet的新式应用。 使用ASP.NET Core,您可以:

  • 生成Web应用和服务、物联网(IoT)应用和移动后端。
  • 在Windows、macOS和Linux上使用喜爱的开发工具。
  • 部署到云或本地。
  • 在.NET Core上运行。

为何选择ASP.NET Core?

数百万开发人员在使用或使用过ASP.NET 4.x创建Web应用。ASP.NET Core是对ASP.NET 4.x的重新设计,其中包括体系结构上的更改,产生了更精简、更模块化的框架。

ASP.NET Core 具有如下优点:

  • 生成Web UI和Web API的统一场景。
  • 针对可测试性进行构建。
  • Razor Pages可以使基于页面的编码方式更简单高效。
  • Blazor允许在浏览器中使用C#和JavaScript。 共享全部使用.NET编写的服务器端和客户端应用逻辑。
  • 能够在Windows、macOS和Linux上进行开发和运行。
  • 开放源代码和以社区为中心。
  • 集成新式客户端框架和开发工作流。
  • 支持使用gRPC托管远程过程调用(RPC)。
  • 基于环境的云就绪配置系统。
  • 内置依赖项注入。
  • 轻型的高性能模块化HTTP请求管道。
  • 能够托管于以下各项:

    Kestrel

    IIS

    HTTP.sys

    Nginx

    Apache

    Docker
  • 并行版本控制。
  • 简化新式 Web 开发的工具。

使用ASP.NET Core MVC生成Web API和Web UI

ASP.NET Core MVC 提供生成 Web API和Web应用所需的功能:

  • Model-View-Controller(MVC)模式使Web API和Web应用可测试。
  • Razor Pages是基于页面的编程模型,它让Web UI的生成更加简单高效。
  • Razor标记提供了适用于Razor Pages和MVC视图的高效语法。
  • 标记帮助程序使服务器端代码可以在Razor文件中参与创建和呈现HTML元素。
  • 内置的多数据格式和内容协商支持使Web API可访问多种客户端,包括浏览器和移动设备。
  • 模型绑定自动将HTTP请求中的数据映射到操作方法参数。
  • 模型验证自动执行客户端和服务器端验证。

ASP.NET Core目标框架

ASP.NET Core 3.x和更高版本只能面向.NET Core。通常,ASP.NET Core由.NET Standard库组成。 使用.NET Standard 2.0编写的库在实现.NET Standard 2.0的任何.NET平台上运行。

面向.NET Core有以下几个优势,并且这些优势会随着每次发布增加。 与.NET Framework相比,.NET Core的部分优势包括:

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

ASP.NET Core开源地址

使用ASP.NET Core创建Web API

使用支持创建、读取、更新、删除(CRUD) 操作的ASP.NET Core创建RESTful服务。

介绍

假设你是一家名为Contoso Pets的在线狗玩具零售商的员工。 你的经理要求你开发RESTful库存管理服务,作为公司Web店面的必备项目。 该服务必须支持添加、查看、修改和删除产品 — HTTP 操作谓词的标准化使用方式,通常也称为创建、读取、更新、删除 (CRUD)。

接下来将介绍ASP.NET Core Web API与.NET Core和C#结合使用来创建跨平台RESTful服务。 将创建内存数据库以保存产品数据。实体框架(EF)核心将用作对象关系映射器(O/RM),用于读取和管理产品数据。

参考

温故知新,使用ASP.NET Core创建Web API,永远第一次的更多相关文章

  1. 基于ASP.NET Core 创建 Web API

    使用 Visual Studio 创建项目. 文件->新建->项目,选择创建 ASP.NET Core Web 应用程序. 基于 ASP.NET Core 2.0 ,选择API,身份验证选 ...

  2. 使用 ASP.NET Core 创建 Web API及链接sqlserver数据库

    创建 Web API https://docs.microsoft.com/zh-cn/aspnet/core/tutorials/first-web-api?view=aspnetcore-3.0& ...

  3. angular4和asp.net core 2 web api

    angular4和asp.net core 2 web api 这是一篇学习笔记. angular 5 正式版都快出了, 不过主要是性能升级. 我认为angular 4还是很适合企业的, 就像.net ...

  4. 使用angular4和asp.net core 2 web api做个练习项目(一)

    这是一篇学习笔记. angular 5 正式版都快出了, 不过主要是性能升级. 我认为angular 4还是很适合企业的, 就像.net一样. 我用的是windows 10 安装工具: git for ...

  5. 使用angular4和asp.net core 2 web api做个练习项目(四)

    第一部分: http://www.cnblogs.com/cgzl/p/7755801.html 第二部分: http://www.cnblogs.com/cgzl/p/7763397.html 第三 ...

  6. ASP.NET Core Restful Web API 相关资源索引

    GraphQL 使用ASP.NET Core开发GraphQL服务器 -- 预备知识(上) 使用ASP.NET Core开发GraphQL服务器 -- 预备知识(下) [视频] 使用ASP.NET C ...

  7. 使用angular4和asp.net core 2 web api做个练习项目(二), 这部分都是angular

    上一篇: http://www.cnblogs.com/cgzl/p/7755801.html 完成client.service.ts: import { Injectable } from '@an ...

  8. 使用angular4和asp.net core 2 web api做个练习项目(三)

    第一部分: http://www.cnblogs.com/cgzl/p/7755801.html 第二部分: http://www.cnblogs.com/cgzl/p/7763397.html 后台 ...

  9. 使用 ASP.NET Core MVC 创建 Web API(五)

    使用 ASP.NET Core MVC 创建 Web API 使用 ASP.NET Core MVC 创建 Web API(一) 使用 ASP.NET Core MVC 创建 Web API(二) 使 ...

随机推荐

  1. 关于.NET微服务最热门的问题解答

    在我们最近让我们一起学习.NET的微服务专场活动中,我们收到了一些很好的问题.我们在现场已经回答很多问题,但我们想继续回答一些在会议中出现的最热门的问题.如果你错过了现场直播,不要担心,因为你可以按需 ...

  2. [bug] python3 pip 安装 MarkupSafe==1.0 失败:ImportError:cannot import name 'Feature' from 'setpools'

    解决 先升级pip到最新版本 python -m pip install --upgrade pip 再升级setuptools pip install --upgrade pip setuptool ...

  3. 解决nohup: 忽略输入并把输出追加到"nohup.out"或者nohup: 忽略输入重定向错误到标准输出端

    nohup启动脚本的时候,没有指定输出路径,默认使用当前目录的nohup.out 例如下面这句就是默认使用nohup.out作为输出文件: nohup script.sh & 改成下面的,则/ ...

  4. Linux_搭建Samba服务(认证访问)

    [RHEL8]-SMBserver:[RHEL7]-SMBclient !!!测试环境我们首关闭防火墙和selinux(SMBserver和SMBclient都需要) [root@localhost ...

  5. Java中JDK,JRE和JVM之间的关系-(转载)

    初学JAVA很容易被其中的很多概念弄的傻傻分不清楚,首先从概念上理解一下吧,JDK(Java Development Kit)简单理解就是Java开发工具包,JRE(Java Runtime Envi ...

  6. Linux shell用sed批量更改文件名的相关内容

    示例 去除特定字符 目标:将指定目录下文件名中sprint替换为dev 方法: [root@Skip-ftp test]# for i in `ls` > do > name=`echo ...

  7. python 中的变量内存以及关于is ==、 堆栈、

    在工作学习中会碰到一些python中变量与内存层面的问题理解,虽然是在不断的解决,但是并没有做过这方面的总结. 变量:用来标识(identify)一块内存区域.为了方便表示内存,我们操作变量实质上是在 ...

  8. 大数据学习之路—环境配置——IP设置(虚拟机修改Ip的内在原因及实现)

    一.IP原理 关于IP我的理解, (1)主要去理解IP地址的作用,IP地址包括网络相关部分和主机的相关部分.即:用一段特殊的数据,来标识网络特征和主机的特征. 至于具体的技术实现,日后可以慢慢体会和了 ...

  9. Nginx 配置实例-配置高可用

    Nginx 配置实例-配置高可用 1. 实现效果 2. 两台机器 nginx 的安装 2.1 192.168.25.120 中 nginx 的安装 2.1.1 安装 pcre 依赖 2.1.2 安装其 ...

  10. Python+Selenium学习笔记10 - send_keys上传文件

    在火狐浏览器上传文件 上传前,同一个HTML文件在火狐和Edge浏览器显示有些不同 这是Firefox浏览器的显示 这是Edge浏览器 上传后 1 # coding = utf-8 2 3 from ...