Aktualisieren einer DLL in einer Produktion ASP.NET Web-Site-Ordner "bin"
Ich möchte aktualisieren Sie eine Bibliothek-Klasse (eine einzelne DLL-Datei) in einem Produktions-web-Anwendung. Diese web-app ist bereits erstellt (veröffentlicht). Ich lese eine Antwort auf StackOverflow (sorry, kann nicht scheinen, um es zu finden mehr, weil die Suchfunktion nicht sehr gut funktionieren), das führte mich zu glauben, ich könnte einfach fügen Sie die neue DLL in den bin-Ordner und es würde abgeholt, ohne Probleme (dies würde dazu führen, die WP zu recyceln, das ist in Ordnung mit mir, weil wir nicht verwenden InProc-session-Status).
Jedoch, als ich versuchte, diese, meine Website, bläst und gibt einen FileLoadException sagen, dass das assembly manifest definition entspricht nicht den Assemblyverweis. Was in aller Welt ist das?! Aktualisieren Sie die DLL in Visual Studio und erneutes bereitstellen der gesamten Website funktioniert ganz gut, aber es ist ein großer Schmerz in der Rückseite. Was ist der Punkt, der mit einer separaten DLL, wenn Sie zu re-implementieren Sie die gesamte Website nach änderungen implementieren?
Hier ist die Frage: Wie kann ich ein update einer DLL auf einem Produktions-web-site, ohne die app und ohne re-implementieren Sie alle Dateien?
InformationsquelleAutor Josh Stodola | 2010-03-31
Du musst angemeldet sein, um einen Kommentar abzugeben.
Die Sache zu erinnern ist, dass es Websites und web-Anwendungen so weit wie Visual Studio und ASPNET betrachtet.
Web-Sites haben in der Regel alle von der aspx und vb veröffentlichte Dateien auf den live-server und ASPNET-Arbeitsprozess neu kompiliert die app jedes mal vor der Präsentation.
Auf dem anderen Ende ist die web-Anwendung, wo Sie alle Ihre code-behind-Dateien kompiliert, um eine einzelne DLL-Datei, die Sie bereitstellen, Ihre aspx-Seiten und Sie bin-Ordner mit der DLL-Datei an die Produktion.
Gibt es auch eine "hybrid" - bekannt als "Vorkompilierte Web-Sites" (siehe den link für die offizielle MSDN-übersicht), wo Sie nicht die einzigen DLL layout einer web-Anwendung, die aber alle das kompilieren funktionieren der website wird für Sie erledigt. Es gibt mehrere "modes", um diese je nach Ihren Bedürfnissen.
Es scheint mir, dass Ihre Fehler wird verursacht, weil Ihre Website wird als eine web-site mit irgendeiner Art von Vorkompilierung im Ort. Mit der vor-kompilierten Modell ist ein wenig mehr "strenge" wird, wird davon ausgegangen, dass bestimmte Dateien/Signaturen vorhanden sind. Mit einer aktualisierten version der DLL-Datei verursacht einen Bruch, da die Vorkompilierung will einen Namen und eine version der Datei.
Wenn möglich, Ihre beste Wette wäre, zu konvertieren, um eine web-Anwendung, da Sie hinzufügen können, die zusätzliche DLLs in die Produktion ohne ein problem. Sonst, nehmen Sie einen Blick auf diese matrix, um zu sehen, welche form der Vorkompilierung Sie für Ihre Anwendung benötigen.
Sie sollten in der Lage sein, auf der rechten Maustaste auf das Projekt-Datei und wählen Sie "Convert to Web Application" und es wird der Prozess für Sie.
Ich habe nicht die "Convert to Web Application" - option in meinem Projektmappen-explorer Kontext-Menü. Ich habe VS2008 professional edition. Ich bin nicht blind, es ist einfach nicht da! Ist es eine Art add-on, das ich dafür brauche? Danke.
Ich glaube, die option ist im Kontextmenü des Projekts, nicht die Lösung. Versuchen Sie es.
Ich habe alles versucht und ich einfach nicht "Convert to Web Application" - option. Ich habe lange gesucht um zu versuchen, um herauszufinden, ob es eine spezielle version von VS oder vielleicht ein service-pack, das ich nicht installiert haben, oder etwas, aber es scheint, ich bin up to date über alles!
InformationsquelleAutor Dillie-O
Blick auf diese SO veröffentlichen könnte, was Sie sich beziehen. Die befindet assembly manifest definition entspricht nicht den Assemblyverweis
InformationsquelleAutor Dustin Laine
Haben Sie einen Blick auf Ihre Referenz. Sagt es "version = "true" ? Setzen Sie ihn auf false, veröffentlichen Ihre app ein (Sie haben es einmal tun, weil Sie jetzt Ihre app ist immer noch auf der Suche für eine Baugruppe mit einer bestimmten manifest) und versuchen Sie es erneut.
In der Referenz-Eigenschaften. Erweitern Sie Verweise, klicken Sie rechts auf die spezifische Referenz, klicken Sie auf Eigenschaften.
Ich kann nicht finden, was Sie reden. Dies ist eine Website, die nicht von einer web-Anwendung.
Hmm naja Sie sagte "web-app" erste. Dann meine awswer nicht auf Ihre situation zutrifft.
Gut, es ist eine web-Anwendung, per se. Aber Visual Studio beschlossen zu kommen mit Ihrer eigenen dumm-Terminologie zu verwirren jeden. Laut VS ist dies eine web-site.
InformationsquelleAutor citronas