我在我的应用程序中声明了以下内容:
[assembly: OwinStartup("MyClass", typeof(MyClass), "ConfigureOwin")]定义了启动类:
public class MyClass {
public void ConfigureOwin(IAppBuilder appBuilder) {
}
}然后像这样开始:
WebApp.Start<MyClass>("baseUri");然而,它并不起作用。WebApp总是尝试查找名为“Configuration”的方法,即使我定义查找其他方法也是如此。我能做些什么?
发布于 2015-08-04 02:53:11
对我来说,我需要添加Microsoft.Owin.Host.SystemWeb作为引用。(单击Manage Nuget Packages并搜索它。)
感谢this blog post的提示。
我遇到这个问题是因为我使用OWIN middleware for ADFS authentication从Web API迁移到Web API。
发布于 2017-06-29 14:27:31
如果您在web.config中使用optimizeCompilations="true",则可能需要将其设置为false,然后再设置回true。
发布于 2014-03-14 21:02:26
OwinStartupAttribute和WebApp.Start(StartOptions)都是用来指定使用哪个类来配置OWIN管道的方法,它们都假定指定的类型有一个签名为Configuration(IAppBuilder)的方法。
但是,OwinStartupAttribute具有指定可选方法名称的重载。在使用WebApp.Start<T>方法时,没有重载来指定方法名称。
当您有一个“启动”OWIN管道的外部组件时,OwinStartupAttribute是最有用的,例如ASP.NET处理程序(使用Microsoft.Owin.Host.SystemWeb)或Helios (使用Microsoft.Owin.Host.IIS)。如果是自托管(使用Microsoft.Owin.Host.HttpListener),最好使用WebApp.Start方法。
这里有一个关于OWIN Startup Class Detection的很好的资源。
https://stackoverflow.com/questions/22405584
复制相似问题