Erreur d'Owin avec ASP.NET application MVC

j'ai un ASP.NET application qui fonctionne bien sur ma machine locale. Je l'ai téléchargé sur un serveur utilisant Web deploy. J'obtiens l'erreur suivante quand j'essaye de voir le site:

les erreurs suivantes se sont produites en essayant de charger l'application. - L'attribut OwinStartup découvert dans assembly 'Gators3' faisant référence au type de démarrage 'Gators3."Startup" est en conflit avec l'attribut "myfirstproject2" referencing startup type " MyFirstProject2.Démarrage", parce que ils ont la même FriendlyName ". Supprimez ou renommez un des attributs, ou référencez le type désiré directement. Pour désactiver la découverte de démarrage OWIN, ajoutez l'application owin: AutomaticAppStartup avec une valeur de "false" dans votre web.config. Pour spécifier L'assemblage, la classe ou la méthode de démarrage OWIN, ajoutez le nom de la classe de démarrage ou de la méthode de configuration pleinement qualifiée owin:AppStartup dans votre web.config.

j'ai essayé de chercher la solution pour la chaîne "Monpremierprojet2" mais n'a rien donné. Le message donne quelques suggestions, mais aucune ne signifie rien pour moi. Je ne sais pas comment "supprimer ou renommer un des attributs, ou référencer directement le type désiré", et je ne vois pas de place dans le web.config à " ajouter l'application owin: AppStartup avec la classe de démarrage pleinement qualifié ou le nom de la méthode de configuration dans votre web.config."

j'ai trouvé , mais je ne sais pas trop comment l'implémenter. J'ai fait aussi trouver [assembly: OwinStartupAttribute(typeof(Gators3.Startup))] dans mon Startup.cs, mais je ne suis pas sûr de ce qu'il faut faire là-bas non plus.

27
demandé sur abalter 2015-06-06 02:47:52

8 réponses

le problème est que Le Gators3.dll et Monpremierprojet2.dll sont dans le même dossier (je suppose qu'il est dossier bin sur votre serveur) et les deux utilisent des middleware Owin. Si vous n'avez pas besoin de mon premier projet2.dll alors le plus simple serait de supprimer cette assemblée. Si vous en avez besoin, mais sans Owin - ajouter la ligne suivante au Web.config / app.config dans votre projet MyFirstProject2: <add key="owin:AutomaticAppStartup" value="False" />

Si vous avez besoin d'utiliser Owin pour deux projets de configurer des noms conviviaux pour les deux ils.

  • Gators3 project:

modifier l'attribut de démarrage Owin à quelque chose comme:

 attribute [assembly: OwinStartupAttribute("GatorsConfig", typeof(Gators3.Startup))]

et ajouter la ligne suivante au Web.config sein de la section appSettings:

   <add key="owin:appStartup" value="GatorsConfig" /> 
  • MyFirstProject2 project:

modifier l'attribut de démarrage Owin à quelque chose comme:

   attribute [assembly: OwinStartupAttribute("MyFirstProject2Config", typeof(MyFirstProject2.Startup))]

et ajouter la ligne suivante au Web.config sein de la section appSettings:

   <add key="owin:appStartup" value="MyFirstProject2Config" />
52
répondu LaoR 2015-07-31 10:15:00

j'avais le même problème : enlever tout dans le dossier de la corbeille et reconstruire la solution seule a fonctionné pour moi. Mais cela pourrait être combiné avec le fait de renommer votre attribut assembly en haut de la startup class, lui donnant un nom précis qui aidera à différencier les deux fichiers de démarrage.

[assembly: OwinStartup("MyFriendlyNameForProject1",typeof(MyProject.Startup))]
18
répondu Nishanth Shaan 2016-04-08 14:04:15

Videz votre dossier bin et votre dossier obj.Reconstruire à nouveau le projet et de lancer :)

13
répondu Sriman Saswat Suvankar 2017-01-02 09:57:06

supprimez tout ce qui dit 'MyFirstProject2' de votre dossier bin et reconstruisez la solution, cela fonctionnera.

4
répondu Tino Jose Thannippara 2017-03-09 10:10:48

j'ai eu le même problème et j'ai ajouté la balise suivante sur le web config:

<appSettings>
    <add key="owin:AutomaticAppStartup" value="false" />
</appSettings>
3
répondu Võ Đại Thắng 2018-04-27 09:50:00

se produit lorsque vous faites référence (par erreur?) un projet avec owin de démarrage à l'intérieur d'un autre projet avec owin de démarrage. Correction-supprimer la référence, bin, dossiers obj et de reconstruire.

2
répondu Nick Kovalsky 2017-08-22 14:10:02

Aussi, si vous publiez une solution Azure:

1) cliquez avec le bouton droit de la souris et sélectionnez Publier.

2) Allez dans Paramètres et étendre les "options de publication de fichiers"

3) sélectionnez "Supprimer des fichiers supplémentaires à destination"

4) publier

a Fonctionné pour moi, après la suppression de fichiers à partir de l'obj et Dossier bin.

2
répondu Michael Staples 2018-05-24 10:43:36

C'est ce que j'ai fait:

  1. comme j'ai 3 projets dans une solution, j'ai dû ouvrir TOUS les dossiers bin de chaque projet et y supprimer tous les fichiers.

  2. construisez chaque projet un par un.

  3. construisez la solution entière.

Problème résolu de ma part.

0
répondu Willy David Jr 2018-06-27 07:42:14