十二个 ASP.NET Core 例子

Posted DotNet

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了十二个 ASP.NET Core 例子相关的知识,希望对你有一定的参考价值。


英文:Piotr Gankiewicz

译文:Savorboard

链接:cnblogs.com/savorboard/p/6772870.html


前言


在今天的博客中,我将介绍十几个可以在 ASP.NET Core 应用程序中使用的简单示例(https://github.com/spetz/asp-net-core-samples)。从最简单的东西开始,比如 Options, 中间件,数据库,甚至 nginx 或者 Docker。


首先确定你已经执行过了 dotnet restore , 然后运行 dotnet run 来启动应用程序,如果该示例正在使用比如像数据库这样的外部资源的话,请确保你已经安装并且运行它。


1. Options


我们先看一下 options(https://docs.microsoft.com/en-us/aspnet/core/fundamentals/configuration) 来热个身,你可以很轻松的创建一个被叫做 XyzOptions 的类并且将其绑定到 appsettings.json 文件,来做一个配置的定义,并且通过注入 IOptions 来使用它的实例。


2. 中间件


你可以通过将自己的 中间件 (https://docs.microsoft.com/en-us/aspnet/core/fundamentals/middleware)填加到整个流程中来扩展Http请求管道。如果你曾经使用过像NodeJS这样的框架,并且想要使用自己的代码来验证或者处理传入的请求,那么你也可以在 ASP.NET Core 中执行此操作。


3. 过滤器


需要定制异常处理程序? 需要记录传入的请求或者验证他们? 通过使用 过滤器 (https://docs.microsoft.com/en-us/aspnet/core/mvc/controllers/filters),只需创建一个新 Attribute 并且在 MVC Controller 上使用他们就可以实现这些功能或者更多的一些功能。


4. Autofac


在 ASP.NET Core 中,依赖注入和 IOC 容器已经是内置的框架,但是你仍然可以使用自己喜欢的库来替换他们,比如你可以使用 Autofac (http://docs.autofac.org/en/latest/integration/aspnetcore.html)来帮助你提供更多依赖倒置原则方面的功能。


5. Tests


我们都知道怎么样编写一个好的单元测试,但是真的是对的吗? 那么集成测试(端到端)呢? 当然你可以公开你的 API 实例,并且通过 HTTP Client 来执行 HTTP 请求。 然而,有一个更好的办法,你可以在内存中运行这样的测试,感谢 TestHost (https://docs.microsoft.com/en-us/aspnet/core/testing/integration-testing)这个库。


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(https://github.com/StackExchange/StackExchange.Redis) 的开发人员创建了这样一个伟大的库。


9. RabbitMQ


创建分布式系统常见方式之一是使用服务器总线。 RabbitMQ就是其中之一,你可以通过添加我喜欢的 官方库 或者 RawRabbit(http://piotrgankiewicz.com/2016/10/31/net-core-rabbitmq-rawrabbit/), 因为它的抽象和易用性,所以你可以很方便的使用它。


10. Nancy


Nancy(http://nancyfx.org/) 是一个构建 HTTP API 令人惊奇的框架。我非常喜欢它,当我发现它于 ASP.NET Core 框架兼容时我感到很高兴。


11. Docker


一般来说,容器化的应用和容器是现在的行业标准。您可以轻松地使用 Docker (https://www.docker.com/)来构建您的 ASP.NET Core应用程序。


12. Nginx


感谢 Kestrel(https://github.com/aspnet/KestrelHttpServer) HTTP Server,您不再需要使用IIS了。比如,您也可以在Linux服务器上选择 Apache (https://httpd.apache.org/)或 Nginx (https://www.nginx.com/)来托管 .NET Core 应用程序。


如上所述,你可以从 GitHub(https://github.com/spetz/asp-net-core-samples) 中找到并下载所有的实例程序。


看完本文有收获?请转发分享给更多人

关注「DotNet」,提升.Net技能 

以上是关于十二个 ASP.NET Core 例子的主要内容,如果未能解决你的问题,请参考以下文章

十二个 ASP.NET Core 例子——过滤器

理解ASP.NET Core

在 ASP.NET Core 2 中处理异常的推荐方法? [关闭]

在 Asp.Net Core 中使用 Swagger 在请求中未发送授权承载令牌

[十二] ASP.NET Core 中的模型绑定

[十二] ASP.NET Core 中的模型绑定