OWIN de Démarrage ne fonctionne pas
J'ai déclaré la suite de ma demande:
[assembly: OwinStartup("MyClass", typeof(MyClass), "ConfigureOwin")]
Défini un démarrage de classe:
public class MyClass {
public void ConfigureOwin(IAppBuilder appBuilder) {
}
}
Et commencer à owin comme ceci:
WebApp.Start<MyClass>("baseUri");
Toutefois, cela ne fonctionne pas. WebApp essaie toujours de chercher une méthode nommée "Configuration", même si je définir chercher quelque chose d'autre. Que pouvais-je faire?
Double Possible de OwinStartup pas de Départ ... Pourquoi?
OriginalL'auteur Acrotygma | 2014-03-14
Vous devez vous connecter pour publier un commentaire.
Pour moi, j'ai besoin d'ajouter
Microsoft.Owin.Host.SystemWeb
comme une référence. (Cliquez sur Gérer les Packages Nuget et de recherche).Grâce à ce blog pour l'astuce.
Je suis tombé sur cette question parce que j'ai migré à partir de l'API Web de l'API Web avec OWIN middleware pour l'authentification ADFS.
J' toujours oublier que l'une 🙁
Je ne suis pas sûr de savoir pourquoi cela n'est pas marché comme réponse?
OriginalL'auteur Jess
Si vous utilisez
optimizeCompilations="true"
dans votreweb.config
vous devrez peut-être configurer pourfalse
et retour àtrue
.Aussi résolu le problème pour moi. Changement
optimizeCompilations
àfalse
, l'exécution de votre application, puis revenir àtrue
. C'est un muet solution mais qui fonctionne!C'. Est passé par un tas d'autres réponses et c'est la seule chose qui a fonctionné!
OriginalL'auteur joshschreuder
Les deux
OwinStartupAttribute
etWebApp.Start<T>(StartOptions)
sont des moyens pour spécifier la classe à utiliser pour configurer les OWIN pipeline, à la fois supposons que le type a une méthode avec la signatureConfiguration(IAppBuilder)
.Cependant, la
OwinStartupAttribute
a surcharges pour spécifier une option de nom de la méthode. Autant que je sache, il n'y a pas de surcharge pour spécifier le nom de la méthode lors de l'utilisation de laWebApp.Start<T>
méthode.La
OwinStartupAttribute
est plus utile lorsque vous disposez d'un composant externe qui "kickstarts" la OWIN pipeline, par exemple, un ASP.NET gestionnaire (à l'aide de Microsoft.Owin.De l'hôte.SystemWeb) ou Helios (à l'aide de Microsoft.Owin.De l'hôte.IIS). Si vous êtes auto-hébergement (à l'aide de Microsoft.Owin.De l'hôte.HttpListener), il est préférable d'utiliser leWebApp.Start
méthodes.Voici une excellente ressource sur OWIN de Démarrage de la Classe de Détection.
Vous êtes correct. Il n'y a rien à "kickstart" de l'application lors de l'auto-hébergement (dans un scénario web, il serait un ASP.NET gestionnaire ou Helios (pur IIS)). Si vous êtes auto-hébergement, j'irais avec le
WebApp.Start<T>
approche et il suffit de coller à ces conventions 🙂+1 pour préciser que
OwinStartupAttribute
doit démarrer au kick par l'ASP.Net gestionnaire lorsqu'il est hébergé dans IISOriginalL'auteur khellang
Dans votre site web.config
appSettings
, essayez d'ajouter ceci:OriginalL'auteur codeMonkey