基于工厂的中间件需要继承IMiddleware接口,在请求到来时,会从IMiddlewareFactory中获取中间件实例
如果中间件没有继承IMiddleware接口,则不会从IMiddlewareFactory中获取
.netcore具有IMiddlewareFactory的默认实现
IMiddleware
使用基于工厂的中间件(继承IMiddleware接口):
public class FactoryActivatedMiddleware : IMiddleware
{
private readonly AppDbContext _db;
public FactoryActivatedMiddleware(AppDbContext db)
{
_db = db;
}
public async Task InvokeAsync(