十二个 ASP.NET Core 例子
原文地址:http://piotrgankiewicz.com/2017/04/17/asp-net-core-12-samples/
作者:Piotr Gankiewicz
翻译:杨晓东(Savorboard)
前言
在今天的博客中,我将介绍十几个可以在 ASP.NET Core 应用程序中使用的简单示例。从最简单的东西开始,比如 Options, 中间件,数据库,甚至 Nginx 或者 Docker。
首先确定你已经执行过了 dotnet restore , 然后运行 dotnet run 来启动应用程序,如果该示例正在使用比如像数据库这样的外部资源的话,请确保你已经安装并且运行它。
#1. Options
我们先看一下 options 来热个身,你可以很轻松的创建一个被叫做 XyzOptions 的类并且将其绑定到 appsettings.json 文件,来做一个配置的定义,并且通过注入 IOptions 来使用它的实例。
#2. 中间件
你可以通过将自己的 中间件 填加到整个流程中来扩展Http请求管道。如果你曾经使用过像NodeJS这样的框架,并且想要使用自己的代码来验证或者处理传入的请求,那么你也可以在 ASP.NET Core 中执行此操作。
#3. 过滤器
需要定制异常处理程序? 需要记录传入的请求或者验证他们? 通过使用 过滤器 ,只需创建一个新 Attribute 并且在 MVC Controller 上使用他们就可以实现这些功能或者更多的一些功能。
#4. Autofac
在 ASP.NET Core 中,依赖注入和 IOC 容器已经是内置的框架,但是你仍然可以使用自己喜欢的库来替换他们,比如你可以使用 Autofac 来帮助你提供更多依赖倒置原则方面的功能。
#5. Tests
我们都知道怎么样编写一个好的单元测试,但是真的是对的吗? 那么集成测试(端到端)呢? 当然你可以公开你的 API 实例,并且通过 HTTP Client 来执行 HTTP 请求。 然而,有一个更好的办法,你可以在内存中运行这样的测试,感谢 TestHost 这个库。
#6. SQL Server
你知道你可以在 Linux 上运行 SQL Server 了吗? 不管怎么说,你可以比如使用 Entity Framework Core 库通过 .NET Core 创建一个 SQL Server 实例, 但是,我更喜欢更加轻量级的解决方案,因此实例提供的代码使用的是 Drapper。
#7. MongoDB
你喜欢使用像我用的这种 NOSQL 数据库吗? 你可以使用 MangoDB 驱动程序,并且从 .NET Core 应用程序连接到 MangoDB 数据库。
#8. Redis
Redis 是一个强大的缓存功能的库,而且你可以连接到 Redis 服务器,感谢 StackExchang 的开发人员创建了这样一个伟大的库。
#9. RabbitMQ
创建分布式系统常见方式之一是使用服务器总线。 RabbitMQ就是其中之一,你可以通过添加我喜欢的 官方库 或者 RawRabbit
, 因为它的抽象和易用性,所以你可以很方便的使用它。
#10. Nancy
Nancy 是一个构建 HTTP API 令人惊奇的框架。我非常喜欢它,当我发现它于 ASP.NET Core 框架兼容时我感到很高兴。
#11. Docker
一般来说,容器化的应用和容器是现在的行业标准。您可以轻松地使用 Docker 来构建您的 ASP.NET Core应用程序。
#12. Nginx
感谢 Kestrel HTTP Server,您不再需要使用IIS了。比如,您也可以在Linux服务器上选择 Apache 或 Nginx 来托管 .NET Core 应用程序。
如上所述,你可以从 GitHub 中找到并下载所有的实例程序。
本文地址:http://www.cnblogs.com/savorboard/p/aspnetcore-samples.html
版权归原作者所有
十二个 ASP.NET Core 例子的更多相关文章
- 十二个 ASP.NET Core 例子——过滤器
目录: 过滤器介绍 过滤器类别 自定义过滤器和过滤特性 直接短路返回内容 过滤器与中间件的区别 如果要全局日志,不要用过滤器 官方文档传送门 1.过滤器介绍 没有权限直接返回,资源缓存,Action执 ...
- 十二个 ASP.NET Core 例子——中间件
目录: 什么是中间件(IApplicationBuilder) 创建 顺序规则 Asp.Net Core 内置的中间件 1.什么是中间件 官方:中间件是组装成应用程序管道以处理请求和响应的软件.每个组 ...
- 十二个 ASP.NET Core 例子——1.1版本 EF MySql快速搭建
core1.0的时候搭建过一次mysql EF. 一大推问题.最近在core1.1 又重新搭了一次.简单搭建还挺快,没出现什么幺蛾子.总结下步骤 建立项目,例如ASP.NET Core1.1 WebA ...
- 十二个 ASP.NET Core 例子——IOC
目录 简单介绍 core自带IOC的实现解释 1.简单介绍 (个人理解) 是什么:IOC是一种设计原则,而非设计模式,是对流程控制,当你注入你需要的定制化类时,流程就确定了 怎么用:和IOC容器说你这 ...
- 十二个 ASP.NET Core 例子——配置操作
目录: 简单配置(利用configration 键值读取) 使用选项和配置对象(自定义类绑定配置文件实现读取) IOptionsSnapshot(配置文件更改时也变化) 内存数据放到配置对象中 实体框 ...
- 第二十节:Asp.Net Core WebApi生成在线文档
一. 基本概念 1.背景 使用 Web API 时,了解其各种方法对开发人员来说可能是一项挑战. Swagger 也称为OpenAPI,解决了为 Web API 生成有用文档和帮助页的问题. 它具有诸 ...
- 第十节:Asp.Net Core 配置详解和选项模式
一. 各种文件的读取 1.说明 在.Net Core中,各种配置文件的读取都需要依赖[Microsoft.Extensions.Configuration]程序集,当然在Asp.Net Core中已经 ...
- Spring Security(三十二):10. Core Services
Now that we have a high-level overview of the Spring Security architecture and its core classes, let ...
- 二、Asp.Net Core WebAPI——OcelotDemo
项目源码OcelotDemo 基础知识在教程或者官网文档查看 Ocelot源码 基于.NET平台的Ocelot网关框架教程汇总 这篇文章不错. 这里我只写我想说的 项目结构 API1和API2是测试的 ...
随机推荐
- virtualBox,webstorm,开虚拟机传代码
一起git一个新技能 利用virtualBOX在本地开一个虚拟机,然后设置webstorm连接到虚拟机,将代码传到虚拟机里. 以下详细讲解: 第一步: 第二步:管理虚拟机的设置(我是用的是Xshell ...
- 一道面试题引发的pythonic
一道测试工程师面试题(来自搜狗): 自己写了解法: # -*- coding: utf-8 -*- import re #从整体log中过滤出有用的部分,缩小搜索范围 def filter_log(t ...
- 用C写一个web服务器(一) 基础功能
.container { margin-right: auto; margin-left: auto; padding-left: 15px; padding-right: 15px } .conta ...
- 在线音乐播放器-----酷狗音乐api接口抓取
首先身为一个在线音乐播放器,需要前端和数据库的搭配使用. 在数据库方面,我们没有办法制作,首先是版权问题,再加上数据量.所以我们需要借用其他网络播放器的数据库. 但是这些在线播放器,如百度,酷狗,酷我 ...
- 谷歌开源图片压缩算法Guetzli实测体验报告
谷歌大神又出开源新技术啦,这次是对JPEG格式的图片采用全新算法重新编码,输出的图片还是JPEG但是图片大小明显缩小,而质量不但没有损失,甚至还更加优化,速速来体验一把. 一.环境安装 下载谷歌开源软 ...
- 关于Tarjan(1)
众所周知, 求有向图的强连通分量的Tarjan算法是以其发明者Robert Tarjan命名的.Robert Tarjan还发明了求双连通分量的Tarjan算法,以及求最近公共祖先(LCA)的离线Ta ...
- static成员是可以被其所在class创建的实例访问!!!
<span style="font-family: Arial, Helvetica, sans-serif; ">关于静态方法以及静态变量的使用就不详细的说了,我就这 ...
- 模拟在内存中的数据库DataSet相关的类
这篇连着上一篇DataReader相关类. 下面两段话是在msdn官网摘下来: .NET Framework 数据提供程序是专门为数据操作以及快速.只进.只读访问数据而设计的组件.Conn ...
- Terminating app due to uncaught exception 'NSUnknownKeyException' this class is not key value coding-compliant for the key
Terminating app due to uncaught exception 'NSUnknownKeyException', reason: '[ViewController > se ...
- SearchBar简单展示
import UIKit class SearchViewController: UIViewController,UISearchBarDelegate { let SCREEN_WIDTH = U ...