一.前言 从 18 年开始接触 .NET Core 开始,在私底下.工作中也开始慢慢从传统的 mvc 前后端一把梭,开始转向 web api + vue,之前自己有个半成品的 asp.net core 2.2 的项目模板,最近几个月的时间,私下除了学习 Angular 也在对这个模板基于 asp.net core 3.1 进行慢慢补齐功能 因为涉及到底层框架大版本升级,由于某些 breaking changes 必定会造成之前的某些写法没办法继续使用,趁着端午节假期,在改造模板时,发现没办法通过…
Exploring Program.cs, Startup.cs and CreateDefaultBuilder in ASP.NET Core 2 preview 1 ASP.NET Core 2.0 的目标之一是已经被简洁化的基础模板.简化了其基本使用,并且让开始一个新项目变得更加简单. 明显从表面上来看,新的 Program 和 Startup 类型相比于 ASP.NET Core 1.0 更加简单.现在,我将从新的 WebHost.CreateDefaultBuilder() 方法出发…
一.Startup类 ASP.NET Core 应用是一个控制台应用,它在其 Program.Main 方法中创建 Web 服务器.其中Main方法是应用的托管入口点,Main 方法调用 WebHost.CreateDefaultBuilder来创建 Web 主机,自动分配了 Kestrel Web 服务器.IWebHostBuilder 的 Build 方法生成 IWebHost对象调用Run 方法启动WebHost,此时托管应用并开始侦听 HTTP 请求.代码如下所示: public cla…
ASP.NET Core 2 High Performance 大概的翻看了一下这本书,这本C# 7 and .NET Core 2.0 High Performance内容要好很多,这里先放出对应目录,有兴趣的朋友,可以到中国最大IT盗版书网站里找这本书. 读书笔记:2~5章 读书笔记:6~7章 读书笔记:8~12章 目录章节翻译: ASP.NET Core 2 新特性 为什么性能会是一个新特性 为什么性能会是一个特性 常见的性能问题 了解硬件 工具和成本 设置你的开发环境 Windows M…
摘要 随着现代化微服务架构的发展,系统故障的定位与快速恢复面临着诸多挑战,构建可检测的服务,帮助线上保障团队时刻掌控应用的运行状况越来越重要.本次分享会讲解如何让 ASP .NET Core 应用与现代化云基础设施完美融合,提升服务的可检测性,保障线上系统的可用率. 技术架构进化史 单体架构 服务化架构(SOA) 微服务架构 Service Mesh 架构进化带来的挑战 应用越拆越多 拓扑越来越复杂 故障定位难上加难 哪些场景需要应用可检测 故障自动隔离 故障定位排查 服务可用性检测 服务性能测…
演化与完善整体概念 ASP .NET Core 整体概念推演 整体概念推演到具体的形式 ASP .NET Core 整体概念推演 ASP .NET Core 其实就是通过 web framework 处理 HTTP 请求并提供 HTTP 响应 web framework 由程序员使用,它包括 ASP .NET Core,Express,spring 等等组成 这样我们就完成了对 ASP .NET Core 的底层建模,接下来对 HTTP 请求和 HTTP 响应进行细化 对于原始 HTTP 请求,…
.有关怎么创建Core MVC/API 这里就不说了,前段时间的博客有说过: 1.  项目生成后会有如图所示两个类 Program类Startup类 2. Startup类  初始内容 public void ConfigureServices(IServiceCollection services) { //运行时调用此方法.使用此方法向容器添加服务. } public void Configure(IApplicationBuilder app, IHostingEnvironment en…
Startup类和服务配置   STARTUP CLASS AND THE SERVICE CONFIGURATION 在 Startup 类中,有两个方法:ConfigureServices 是用于服务注册,Configure 方法是向应用程序的请求管道中添加中间件. 因此,最好的方式是保持 ConfigureServices 方法简洁,并且尽可能地具有可读性.当然,我们需要在该方法内部编写代码来注册服务,但是我们可以通过使用 扩展方法 来让我们的代码更加地可读和可维护. 例如,让我们看一个注…
一.连接字符串 在上二篇中,ASP.NET Core 应用程序连接字符串是写死在ConfigureServices代码中,下面介绍通过配置来实现.连接字符串可以存储在 appsettings.json.用户机密存储.其他配置源中. 下面示例演示appsettings.json 中存储的连接字符串,这样不管asp.net core在什么环境(Development.Staging .Production)都能调用该文件. "ConnectionStrings": { "Blog…
ASP.NET Core 中间件 ASP.NET Core的处理流程是一个管道,而中间件是装配到管道中的用于处理请求和响应的组件.中间件按照装配的先后顺序执行,并决定是否进入下一个组件.中间件管道的处理流程如下图(图片来源于官网): 管道式的处理方式,更加方便我们对程序进行扩展. 使用中间件 ASP.NET Core中间件模型是我们能够快捷的开发自己的中间件,完成对应用的扩展,我们先从一个简单的例子了解一下中间件的开发. Run 首先,我们创建一个ASP.NET Core 应用,在Startup…