【发布时间】:2018-05-31 22:06:50
【问题描述】:
我有一些现有的 Owin 中间件类,最初是为 .Net 4.6 应用程序编写的,它们遵循以下模式:
public class MyMiddleware : OwinMiddleware
{
public MyMiddleware(OwinMiddleware next) : base(next)
{ }
public override async Task Invoke(IOwinContext context)
{
// do stuff
await Next.Invoke(context)
}
}
我正在编写一个新的 .Net Core 2.0 应用程序,我想在其中使用这些中间件(以及一些不基于 Owin 的“新型”中间件)。我很难找到好的文档或执行此操作的示例,至少与我所拥有的类似(例如,this)
我发现的一件有希望的事情是Microsoft.AspNetCore.Owin 包包含一个扩展方法UseOwin(),这似乎是前进的道路,但我无法破译如何使用它来调用我的“遗产”上面的中间件。我意识到在配置IApplicationBuilder 时应该使用UseOwin(),但我不够聪明,无法从网上阅读的内容中获取详细信息。
最直接的方法是什么?
【问题讨论】:
-
@CamiloTerevinto 是的(我在我的问题中添加了该链接),但它提供的唯一示例使用方法作为中间件 - 我认为没有人真正这样做。我的中间件都是独立的类,
UseOwin的签名让我很头疼。我想我真的在寻找UseOwin的示例来调用(多个)中间件类。
标签: c# asp.net-core owin owin-middleware