zoukankan      html  css  js  c++  java
  • 测试.NET core MiddleWare 运行逻辑

    话不多说,直接开整。

    首先创建一个.NET CORE web 工程,创建完成之后,会自动创建相关文件如图(本示例基于.NET CORE 3.0):

    打开Startup.cs可以看到在Configure中默认添加了几个中间件的引用

    如 StaticFiles是对静态文件的引用,顺便说一下在.NET CORE下的web 引用的静态资源要放在wwwroot下。

    直接F5运行,选择IISEXPRESS 自托管方式,可以看到空站点是可以正常运行的。

     下面我们就来加一些代码,来对中间件的运行逻辑进行测试。代码如下,添加3个自定义中间件:

     运行结果如下:

     可以看出,在每个中间件执行next()方法之后,会自动跳转到下一个中间件开始执行,当执行到最后一个中间件之后,再一层层返回。在每个中间件都有一个阻隔终止作用,如果执行到某个中间件,发现没有执行next()方法,则会立即终止,层级向上返回。

    为了测试,我们将第二个中间件的代码修改一下,并再次执行结果如下:

     通过运行结果,可以看出我们的分析逻辑是正确的,程序运行到第二个中间件时,没有next.Invoke指令,则停止并立即按顺序层级返回。

    总结:.NET CORE中通信管道的中间件,有些像 http的请求路由,来管理不同应用模块需要的中间件。

  • 相关阅读:
    JsonParse类
    vs2013提交项目到github
    js选中select
    按每20条分组查询
    批量修改图片格式
    当前日期后10天日期
    C#生成不重复随机数的方法
    接收端通过Request.InputStream读取流
    C#文件流的读写
    C#中HttpWebRequest的用法详解
  • 原文地址:https://www.cnblogs.com/psycheeeeeblog/p/12344707.html
Copyright © 2011-2022 走看看