Mvc 5 scheint von Owin abhängig zu sein, und es ist großartig, wenn Sie selbst hosten oder auf einem Mac laufen wollen. Aber nehmen wir an, ich möchte nur unter IIS laufen wie die vorherigen Versionen und ich bin nicht daran interessiert, was Owin zu bieten hat. Die standardmäßige "leere" mvc5-Vorlage verwendet owin und 15 weitere Abhängigkeiten. Ich habe versucht, Pakete nacheinander zu entfernen, aber es scheint, als ob die Seite nicht wusste, wie man startet, ohne ein Attribut von Owin zu verwenden. Also, wie bekomme ich nur ASP.net, mvc 5, unter iis ohne Owin?Asp.Net MVC 5 ohne Owin?
Antwort
Der einfache Weg Owin zu deaktivieren, ist in web.config
Datei und in <appSettings>
diesen Abschnitt hinzufügen:
<add key="owin:AutomaticAppStartup" value="false" />
Owin ganz rechte Maustaste auf Ihrem Projekt zu entfernen und aus dem Menü klicken Sie auf Manage Nuget Packages
. Auf der linken Seite Manage Nuget Packages
Fenster klicken Sie auf Installed Package
dann auf der rechten Seite des Fensters in Suchfeldtyp owin
.
Deinstallationspakete in der Reihenfolge:
- microsoft.aspnet.identity.owin
- microsoft.owin.host.systemweb
- microsoft.owin.security.cookies
- Microsoft. owin.security.facebook
- microsoft.owin.security.google
- microsoft.owin.securit y.microsoftaccount
- microsoft.owin.security.twitter
und nach microsoft.owin.security.twitter
anderen owin Pakete entfernt automatisch entfernt wird und wenn es die anderen nicht auf Ihrem Computer selbst passiert nicht entfernt. dann entfernen Sie diese Pakete:
- microsoft.aspnet.identity.entityframework
- microsoft.aspnet.identity.core
öffnen web.config
Datei, und entfernen Sie diese Abschnitte von <runtime><assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
:
<dependentAssembly>
<assemblyIdentity name="Microsoft.Owin" publicKeyToken="31bf3856ad364e35" />
<bindingRedirect oldVersion="1.0.0.0-3.0.0.0" newVersion="3.0.0.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="Microsoft.Owin.Security.OAuth" publicKeyToken="31bf3856ad364e35" />
<bindingRedirect oldVersion="1.0.0.0-3.0.0.0" newVersion="3.0.0.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="Microsoft.Owin.Security.Cookies" publicKeyToken="31bf3856ad364e35" />
<bindingRedirect oldVersion="1.0.0.0-3.0.0.0" newVersion="3.0.0.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="Microsoft.Owin.Security" publicKeyToken="31bf3856ad364e35" />
<bindingRedirect oldVersion="1.0.0.0-3.0.0.0" newVersion="3.0.0.0" />
</dependentAssembly>
Entfernen Sie Startup.cs
Datei im Stammverzeichnis des Projekts. Öffnen Sie App_Start folder
und entfernen Sie die Dateien IdentityConfig.cs
und Startup.Auth.cs
.Öffnen Sie Controller folder
und entfernen Sie AccountController.cs
und ManageController.cs
. in Models folder
Löschen Sie alle Modelle und in View Folder
Entfernen Sie Account Folder
und Manage folder
.
Startet Visual Studio neu und führt anschließend das Projekt aus. wenn Sie diesen Fehler erhalten:
The following errors occurred while attempting to load the app. - No assembly found containing an OwinStartupAttribute. - No assembly found containing a Startup or [AssemblyName].Startup class. To disable OWIN startup discovery, add the appSetting owin:AutomaticAppStartup with a value of "false" in your web.config. To specify the OWIN startup Assembly, Class, or Method, add the appSetting owin:AppStartup with the fully qualified startup class or configuration method name in your web.config. you have two ways to solve it:
- öffnen
bin folder
und wenn esOwin assembly
ist, löschen Sie alle von ihnen - Oder offen web.config in
<appSettings>
Abschnitt dann hinzufügen, um dieses<add key="owin:AutomaticAppStartup" value="false" />
Ah, ich glaube, ich habe den allerletzten Schritt verpasst und 'owin: AutomaticAppStartup' hinzugefügt. Ich gebe das eine Chance und melde mich zurück. – Andy
OWIN ist nur ein Standard, der ASP.net-Apps von IIS entkoppelt. Apps können daher unter anderem gehostet werden, aber es bedeutet nicht, dass sie nicht in IIS gehostet werden können.
Ich weiß das, aber ich will nicht alle Abhängigkeiten, also bringt meine Frage (die das nicht beantwortet). – Andy
@Andy Welche Abhängigkeiten möchten Sie entfernen? Teil von vNext ist, dass das Framework über nuget eingebunden wird. Versuchen Sie, asp.net zu entfernen? http://www.hanselman.com/blog/IntroducingASPNETVNext.aspx – Aron
@Aron Nein, ich versuche nicht, Asp.Net zu entfernen, nur Owin. – Andy
Die Standardvorlage mvc5 verwendet Identity als Mitgliedschaftssystem. Die Identität hängt von Owin ab, deshalb ist es im Projekt enthalten (mit mehreren anderen 'optionalen' Paketen). Wenn Sie ein neues leeres Projekt erstellen und manuell das Paket Microsoft.Aspnet.Mvc (mit dem Befehl Install-Package Microsoft.Aspnet.Mvc
) installieren, können Sie feststellen, dass keine Abhängigkeit von Owin besteht.
Obs: Sie können auch ein Empty-Projekt mit der Option 'Ordner und Core-Referenzen für MVC hinzufügen' aktivieren.
I Gib einfach die komplette Route an und es funktioniert für mich !!
Project name: Users.Web
Folders: App_Start
Class name: IdentityConfig
<add key="owin:AppStartup" value="Users.Web.App_Start.IdentityConfig" />
- 1. Okta OWIN Anbieter mit ASP.NET MVC 5
- 2. OWIN Cookie-Authentifizierung ohne ASP.NET Identität
- 3. Ruft OWIN noch MVC (ASP.NET MVC) auf?
- 4. Asp.Net MVC 5 Owin Twitter Auth werfen 401 Exception
- 5. Microsoft.AspNet.Identity ohne OWIN
- 6. ASP.NET MVC 5 Fehlerbehandlung
- 7. Asp.NET MVC 5 Trace
- 8. Asp.net MVC 5 Routing
- 9. Owin Fehler mit ASP.NET MVC-Anwendung
- 10. ASP.NET MVC ohne ASP.NET?
- 11. ASP.NET MVC 5 Web.config: "FormsAuthenticationModule" oder "FormsAuthentication"
- 12. "Generic" OpenID in ASP.NET MVC 5
- 13. ASP.NET MVC 5 DropDownListFor AutoVervollständigen
- 14. ASP.NET MVC 5: Benutzerdefinierte Authentifizierung
- 15. Cookies in ASP.Net MVC 5
- 16. ASP.Net MVC 5 JsonResult Caching
- 17. ASP.NET MVC 5 einfache Anmeldung
- 18. 5 Aktivieren asp.net Broker MVC
- 19. ClaimsIdentity in ASP.NET MVC 5
- 20. ASP.NET MVC 5 DropDownList selectedindexexchanged
- 21. ASP.NET MVC 5 Form Validierung
- 22. ASP.NET MVC 5 Async-Kontextverwaltung
- 23. ASP.Net MVC 5 Unterverzeichnis Bündelungsprobleme
- 24. ASP.NET MVC 5 (VS2013 final): Facebook Login mit OWIN schlägt fehl (loginInfo ist null)
- 25. Migrieren von ASP.NET MVC 5-Projekt nach ASP.NET 5
- 26. MVC 5 Html.BeginForm ohne Modell
- 27. Warum MVC 5 Owin Oauth schlägt nicht/Account/ExternalLoginCallback Aktion
- 28. MVC 5 Weiterleitung zur Anmeldeseite, die nicht mit OWIN funktioniert
- 29. CKfinder- Dynamischer Benutzerordner -Asp.net MVC 5
- 30. LDAP-Authentifizierung in asp.net MVC 5 Anwendung
Ihre Frage lautet "Wie kann ich Asp.Net MVC 5 ohne das Asp.Net vNext-Framework ausführen". – Aron
@Aron Es sei denn, Owin ist jetzt ein integraler Bestandteil von Asp.Net und kann nicht ohne es verwendet werden, nein, das ist nicht meine Frage. – Andy