温故知新,使用ASP.NET Core创建Web API,永远第一次

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 简介
- 使用 ASP.NET Core 创建 Web API
- https://github.com/dotnet/aspnetcore
- https://dotnet.microsoft.com/apps/aspnet
温故知新,使用ASP.NET Core创建Web API,永远第一次的更多相关文章
- 基于ASP.NET Core 创建 Web API
使用 Visual Studio 创建项目. 文件->新建->项目,选择创建 ASP.NET Core Web 应用程序. 基于 ASP.NET Core 2.0 ,选择API,身份验证选 ...
- 使用 ASP.NET Core 创建 Web API及链接sqlserver数据库
创建 Web API https://docs.microsoft.com/zh-cn/aspnet/core/tutorials/first-web-api?view=aspnetcore-3.0& ...
- angular4和asp.net core 2 web api
angular4和asp.net core 2 web api 这是一篇学习笔记. angular 5 正式版都快出了, 不过主要是性能升级. 我认为angular 4还是很适合企业的, 就像.net ...
- 使用angular4和asp.net core 2 web api做个练习项目(一)
这是一篇学习笔记. angular 5 正式版都快出了, 不过主要是性能升级. 我认为angular 4还是很适合企业的, 就像.net一样. 我用的是windows 10 安装工具: git for ...
- 使用angular4和asp.net core 2 web api做个练习项目(四)
第一部分: http://www.cnblogs.com/cgzl/p/7755801.html 第二部分: http://www.cnblogs.com/cgzl/p/7763397.html 第三 ...
- ASP.NET Core Restful Web API 相关资源索引
GraphQL 使用ASP.NET Core开发GraphQL服务器 -- 预备知识(上) 使用ASP.NET Core开发GraphQL服务器 -- 预备知识(下) [视频] 使用ASP.NET C ...
- 使用angular4和asp.net core 2 web api做个练习项目(二), 这部分都是angular
上一篇: http://www.cnblogs.com/cgzl/p/7755801.html 完成client.service.ts: import { Injectable } from '@an ...
- 使用angular4和asp.net core 2 web api做个练习项目(三)
第一部分: http://www.cnblogs.com/cgzl/p/7755801.html 第二部分: http://www.cnblogs.com/cgzl/p/7763397.html 后台 ...
- 使用 ASP.NET Core MVC 创建 Web API(五)
使用 ASP.NET Core MVC 创建 Web API 使用 ASP.NET Core MVC 创建 Web API(一) 使用 ASP.NET Core MVC 创建 Web API(二) 使 ...
随机推荐
- java中基本数据类型、包装类及字符串之间的相互转换
基本数据类型:不支持面向对象的编程机制(没有属性和方法),即不支持面向对象,之所以提供8中基本数据类型,是为了方便常规数据的处理. 包装类:通过包装类可以将基本数据类型的值包装为引用数据类型的对象,使 ...
- shell中的 “.”和source export
在shell脚本里面export的环境变量,在set里面竟然看不到.为什么在shell脚本里面用export设置环境变量之后,当shell执行完了,用set命令看不到呢?但是你如果直接在终端里expo ...
- BUUCTF(十一)[极客大挑战 2019]Knife
BUUCTF系列 想着应该不会这么简单吧... 结果就是这么简单ee 疯狂暗示... url:xxx/index.php 密码:Syc 连接成功... cd / ls cat flag
- 四大浏览器JavaScript性能/硬件加速测试
四大浏览器JavaScript性能/硬件加速测试 出处:快科技 2010-09-19 10:52:59 人气: 27925 次 作者:萧萧 编辑:萧萧[爆料] 评论(42) 收藏文章 新 ...
- TCP三次握手和四次挥手及对应端口状态
一.三次握手 1.第一次握手:Client 将标志位置为1,并向Server发送个seq=j,j为随机产生的数:等待Server回复,此时Client的端口状态为SYN_SENT. 2.第二次握手:S ...
- Java forEach 方式遍历集合(Java 8 新特性)
JDK 8 新增 forEach 方式遍历集合,这种方式比原来的 for each 循环还要简洁和便利. 需要注意:如果你计算机安装的是 JDK 8 以前的版本,是不支持 JDK 8 的新特性 Lis ...
- CCproxy 代理上网
相信有些同学在工作过程中遇到过公司内网环境无法上网的情况,下面给大家介绍一下CCproxy代理上网的配置 场景:linux虚拟机通过CCproxy代理访问外网 环境:只能访问内网的linux环境,可以 ...
- NB-IOT技术与发展问答
http://blog.csdn.net/pan0755/article/details/70145936 该部分分享的是物联网各垂直应用领域里,NB-IoT技术的部署,看看适合NB-IoT技术的垂直 ...
- Linux(CentOS7)下安装jdk1.8
Linux(CentOS7) 下安装 jdk1.8 操作过程. 一.检查是否自带jdk rpm -qa|grep java 如果存在则用下面命令删除,xxx yyy zzz代表查询出来的自带jdk名称 ...
- libevent中的事件机制
libevent是事件驱动的网络库,事件驱动是他的核心,所以理解事件驱动对于理解整个网络库有很重要的意义. 本着从简入繁,今天分析下单线程最简单的事件触发.通过sample下的event- ...