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. jQ的显式迭代和隐式迭代

    jQ的显示迭代 隐式迭代 let lis = document.querySelector('li') lis.forEach(function (value, index) { value.styl ...

  2. 二进制格式安装MySQL

    二进制格式安装MySQL 下载二进制格式的mysql软件包 下载二进制格式的 mysql 软件包 [root@localhost ~]# cd /usr/src/ [root@localhost sr ...

  3. Linux_防火墙与SElinux

    一.防火墙与SElinux 1.防火墙和selinux 防火墙 iptables          默认允许所以 firewalld         默认拒绝所有 ebtables 不认识,不管 se ...

  4. lua中求table长度--(转自有心故我在)

    关于lua table介绍,看以前的文章http://www.cnblogs.com/youxin/p/3672467.html. 官方文档是这么描述#的: 取长度操作符写作一元操作 #. 字符串的长 ...

  5. 手机POS机

    资质查询 http://www.pbc.gov.cn/zhengwugongkai/127924/128041/2951606/1923625/1923629/d6d180ae/index4.html ...

  6. Oracle和MySQL差异总结

    常用功能差异 锁差异: • Oracle锁加在数据块上 • InnoDB 是在索引上加锁,所以MySQL锁的粒度没有Oracle 精细. 导入导出: • Oracle采用EXP /IMP ,EXPDP ...

  7. 解决无法访问github的问题

    当我们想学习下载某个大神分享的github项目时,由于github域名解析异常,时常会无法访问Github网站. 下面是我总结分享的有效解决方法:思路是自己手动修改hosts文件添加域名解析! 下面教 ...

  8. Guava-retry,java重试组件

    使用场景 在日常开发中,我们经常会遇到需要调用外部服务和接口的场景.外部服务对于调用者来说一般都是不可靠的,尤其是在网络环境比较差的情况下,网络抖动很容易导致请求超时等异常情况,这时候就需要使用失败重 ...

  9. 回文词——线性dp

    #include<iostream> #include<cstdio> using namespace std; int n,f[5002][5002]; char str1[ ...

  10. ZooKeeper学习笔记四:使用ZooKeeper实现一个简单的分布式锁

    作者:Grey 原文地址: ZooKeeper学习笔记四:使用ZooKeeper实现一个简单的分布式锁 前置知识 完成ZooKeeper集群搭建以及熟悉ZooKeeperAPI基本使用 需求 当多个进 ...