OWIN StartUp不起作用

Acr*_*gma 8 c# owin

我在申请中声明了以下内容:

[assembly: OwinStartup("MyClass", typeof(MyClass), "ConfigureOwin")]
Run Code Online (Sandbox Code Playgroud)

定义了一个启动类:

public class MyClass {

    public void ConfigureOwin(IAppBuilder appBuilder) {

    }

}
Run Code Online (Sandbox Code Playgroud)

并开始像这样:

WebApp.Start<MyClass>("baseUri");
Run Code Online (Sandbox Code Playgroud)

但是,它不起作用.WebApp总是试图寻找一个名为"配置"的方法,即使我定义了寻找其他东西.我能做什么?

Jes*_*ess 34

对我来说,我需要添加Microsoft.Owin.Host.SystemWeb作为参考.(单击" 管理Nuget包"并搜索它.)

感谢此博客文章的提示.

我遇到了这个问题,因为我使用OWIN中间件从Web API迁移到Web API以进行ADFS身份验证.


jos*_*der 18

如果你使用optimizeCompilations="true"你的web.config,你可能需要将其设置为false和回true.


khe*_*ang 7

这两个OwinStartupAttributeWebApp.Start<T>(StartOptions)一些方法可以指定要使用的类配置OWIN管道,都将假设指定的类型有签名的方法Configuration(IAppBuilder).

但是,OwinStartupAttribute具有指定可选方法名称的重载.使用该WebApp.Start<T>方法时,AFAIK没有指定方法名称的重载.

OwinStartupAttribute当你有一个"启动"OWIN管道的外部组件时,它是最有用的,例如ASP.NET处理程序(使用Microsoft.Owin.Host.SystemWeb)或Helios(使用Microsoft.Owin.Host.IIS).如果您是自托管(使用Microsoft.Owin.Host.HttpListener),最好使用这些WebApp.Start方法.

这是OWIN启动类检测的一个很好的资源.