Wie man ASP.NET-Fehler behebt "Die Datei 'nnn.aspx' wurde nicht vorkompiliert und kann nicht angefordert werden."?
Ich habe eine VS 2005 web-Seite, die ich veröffentlichen mit "Website Veröffentlichen" und ich deaktivieren Sie alle drei Kästchen. Ich habe auch ein deployment-Projekt, nimmt der veröffentlichten Dateien und erstellt eine MSI-Datei. Ich habe dann installieren Sie das Paket auf einem separaten test-server.
In anderen Worten, die ganze Website ist pre-zusammengestellt. Allerdings, wenn ich zu gehen .aspx-Datei im einen spezifischen Unterordner mit dem Namen "Services", bekomme ich eine HttpException:
System.Web.HttpException: Die Datei " /myapp/Dienstleistungen/mypage.aspx' wurde kein pre-kompiliert und können nicht beantragt werden.
Wenn ich gehe zu einem .aspx-Datei in einem anderen Ordner, werden Sie das Stammverzeichnis oder einen anderen Unterordner, funktioniert es richtig.
Den Inhalt von mypage.aspx selbst ist: <%@ Page Language="C#" AutoEventWireup="true" CodeFile="mypage.aspx.cs" Inherits="Services_mypage" %>"
In der /myapp/bin
Ordner kann ich sehen mypage.aspx.989dc2fb.compiled
- Datei. Der Inhalt dieser scheint auf eine bestimmte Versammlung, dass auch in den bin-Ordner.
Warum dieser Fehler Auftritt? Die .kompilierte Datei ist da, und die Montage ist da, und der Typ in Frage, die in diesem assembly (ich kann es sehen im Objekt-Browser). Ist es etwas über den Namen oder den Inhalt der .kompilierte Datei? Habe ich die falsche version irgendwie? Was bedeutet das scheinbar zufällige Zahl in die .zusammengestellt mit dem Namen bedeuten, und ist es wichtig?
Ich möchte auch erwähnen, dass dieses Problem trat plötzlich auf, und ich bin mir nicht sicher, welche änderungen es kann getan worden, da es funktionierte einwandfrei vor ein paar Tagen (aber nach meinem besten wissen, keine).
InformationsquelleAutor der Frage jonsb | 2009-03-02
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ich habe nicht diesen Fehler, aber nach ein wenig Googeln stieß ich auf diesen link, ich bin mir nicht sicher, ob Sie ihn gesehen haben noch: http://forums.asp.net/t/956297.aspx
Bearbeiten (hinzufügen des Schlüssel-Textes):
Leute berichten, dass fehlende Assemblys auf dem Zielserver endete als die Ursache, in Ihren Fällen, aber Sie hatte den gleichen Fehler wie du. Komisch.
Vielleicht ist das das problem?
InformationsquelleAutor der Antwort Carl
Nur als Fußnote, um alle der oben genannten Antworten, dass das Problem gelöst über die Neuveröffentlichung zum ersetzen einer fehlenden assembly... ich habe Zwar dieses Problem gelöst, die zuvor mit der gleichen Lösung, ich habe gerade bemerkt ein weiterer Grund für seine vorkommen, die möglicherweise anderen helfen.
Den AppPool, dass meine Website läuft unter hatte, es ist "Enable 32-bit applications" - Einstellung auf false gesetzt. Durch die änderung von true über die "Erweiterte Einstellungen" - dialog der app-pool i mein Problem gelöst.
Hoffe, das hilft einigen anderen Armen Trottel.
InformationsquelleAutor der Antwort krisg
Bekam ich diese Fehlermeldung, wenn ich ein Upgrade einer Website von 2.0 auf 4.0. Der Fehler wurde verursacht durch eine Datei
PrecompiledApp.config
auf der Website derroot
- Verzeichnis. Einmal habe ich gelöscht, die Datei, die Website zu arbeiten begonnen.InformationsquelleAutor der Antwort Gath Adams
Ich habe gekämpft, um dieses Problem zu beheben für die letzten paar Tage. Zumindest in meinem Fall, die Fehlermeldung war völlig irreführend und hatte nichts zu tun mit der vorkompilierte website. Es gibt viele Artikel oder Beiträge gibt, geben verschiedene Antworten, die nur noch mehr Verwirrung. Ich persönlich glaube dieser Fehler wird verursacht, vor allem durch fehlende Verweise oder falsche Versionierung. Um das Problem zu beheben so schnell wie möglich haben Sie das ausschließen, oder sonst beheben die fehlende/falsche Referenz.
Zu tun, so müssen Sie ein tool namens "Assembly Binding Log Viewer". Dieses tool wird Ihnen sagen, welche Verweise fehlen oder haben falsche Versionen. Wenn es eine fehlende/unpassende Referenz dann gehen Sie vor und fixieren Sie Sie; andernfalls müssen Sie die anderen magischen tricks wie die überprüfung für den App-Pool, die 32-bit-oder Berechtigungen.
Schritte:
Auf dem server erstellen Sie die folgenden Ordner
C:\fuslog
C:\fuslog\logs
Kopieren Assembly Binding Log Viewer auf Ihrem server an C:\fuslog:
Finden Sie das Programm an einem Ort wie diesem
C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Bin\fuslogvw.exe
Müssen Sie möglicherweise Blick auf "Program Files" anstatt "Programme (x86)"
oder schauen Sie in verschiedene vesions statt "v7.0A"
Ausführen fuslogvw.exe auf dem server
Klicken Sie auf "Einstellungen..."
Gewährleisten "Log-bind-Fehler auf Datenträger" aktiviert ist
Aktivieren Sie das Kontrollkästchen benutzerdefinierte log-Pfad und geben Sie den folgenden in der box: C:\fuslog\logs
Klicken Sie auf OK
Recycle/zurücksetzen app pool für die Durchsetzung einer frischen Bindung
Klicken Sie auf Aktualisieren. Jetzt können Sie sehen der gescheiterten Bindung in den hier
Den besseren Weg zu finden die genaue Bindung zu gehen c:\fuslog\logs\Default. Hier finden Sie die genaue Bindung Ausfälle. Einige irrelevant sind und Sie brauchen, um zu finden, die kritisch durch Versuch und Irrtum. Mir wurde der folgende Fehler:
Ich das Problem, indem Sie den folgenden Eintrag auf meine Websites.config:
Ich hoffe, dass dies anderen hilft, schnell zu beheben das Problem.
InformationsquelleAutor der Antwort Aidin
Dieser Fehler aufgetreten zu mir, und ich löste es.
Wenn Sie wollen, veröffentlichen Sie Ihre Website, überprüfen Sie die Feste benennen und einzelne Seite Assemblys in Visual Studio
Du wirst sehen, dieses problem wird gelöst werden!
InformationsquelleAutor der Antwort aws
Es stellte sich heraus, dass eine fehlende (non-web). DLL in das MSI, was ich davon ausgehen, verwendet wurde, durch die Seiten geben den Fehler. Eine ziemlich irreführende Fehlermeldung würde ich sagen, die Seite war sicherlich vorkompilierte, hatte aber einen fehlenden Verweis auf die DLL.
InformationsquelleAutor der Antwort jonsb
Beheben wir diese durch einen Neustart der "AppPool" -, nach dem Versuch mehrere andere Lösungen. Wiederveröffentlichung war nicht eine option, bei dieser Gelegenheit.
InformationsquelleAutor der Antwort Justin
Ich hatte das gleiche problem heute. Einige Foren sagen, es ist die fehlende Referenz in Ihre website und es ist sicherlich nicht in Ihrem Fall. Trotz haben Sie alle notwendigen Baugruppen enthalten, die Sie möglicherweise seit der Bereitstellung Ihrer website im IIS-server mit 3.5 framework, richtig?
Naja es war mein Fall, also kopierte ich die web.config-Datei aus einer original-ASPX 3.5-website geändert und einige Teile (entfernt andere 3.5-assembly-Referenzen) und versuchen, diese neu bereitstellen.
InformationsquelleAutor der Antwort Esteban Solano Granados
Umschichtung des gleichen Dateien, die auch das Problem behoben, in meinem Fall.
Also vielleicht, bevor Sie versuchen, etwas anderes zuerst versuchen, implementieren Sie die app erneut (bin-Ordner-Inhalt sollte genug sein)
BTW: In meinem Fall der Fehler begann, als C-Laufwerk genügend Speicherplatz vorhanden ist.
Happy coding!
ChiTec
InformationsquelleAutor der Antwort ChiTec
Ich weiß, der Fehler ist beschweren sich über etwas anderes, aber ich verspreche, in meinem Fall das problem war nur der Unzureichende Zugriffsberechtigung(Netzwerk-Dienst oder Anwendungspool Identität oder IUSR -) asp.net Konto, mit zu arbeiten, dass bestimmte Datei.
war es aufgrund ungewöhnliche bereitstellen und mischen von bin-Dateien mit dem neuen veröffentlicht, die in unserem VPS-Umgebung.
Lösung:
dass bestimmte Datei-Berechtigungen ersetzt werden müssen mit der richtigen Bin-Ordner permissions wie die anderen Dateien, die korrekt sind(und wo die Fehler) im inneren Bin.
InformationsquelleAutor der Antwort Iman Abidi
Starten Sie durch überprüfen den Speicherplatz auf der disc. Ich habe diesen Fehler, wenn liefen wir aus der Speicherplatz auf der Festplatte-hosting IIS.
InformationsquelleAutor der Antwort Christer Solefält
Diese option das problem bei mir gelöst. Im Grunde, es entfernt alle verwaiste Datei Links nach vorherigen Bereitstellung.
InformationsquelleAutor der Antwort Ivan Nikitin
Ich lief in das gleiche Problem. Mein problem wurde behoben durch löschen der Dateien im temporären asp.net -Ordner "Dateien" in dieser Karte:
InformationsquelleAutor der Antwort Jeroen Corteville
Wenn Sie diese Fehlermeldung erhalten, wenn Sie eine MSBuild-Skript, sind die Chancen, dass Ihr Projekt ist ein 2.0 oder 3.5 Projekt-und MSBuild ist mit dem 4.0-compiler. Versuchen Sie, TargetFrameworkMoniker="3.5", um Ihre AspNetCompiler Richtlinien.
InformationsquelleAutor der Antwort user432578
ich war mit diesem problem konfrontiert, wenn ich eingesetzt einige änderungen an meine bestehende Website.
Sich zu erholen von der Frage, die ich gelöscht Sie alle Dateien aus dem bin-Ordner und umgeschichtet.
Das Problem dann gelöst.
Ich hoffe dies kann einigen helfen.
InformationsquelleAutor der Antwort WeHelps
In meinem Fall war ich nicht hochladen die gemeinsame DLLs wie AjaxControlToolkit.dll, Telerik.dll etc.
Ich habe das ganze veröffentlicht Ordner und fixiert es für mich.
InformationsquelleAutor der Antwort Yasir Ali
Im Fall von einem update und dann neu kompilieren. kopieren Sie alle Dateien aus dem bin-Ordner wieder zu und auch die bestimmte Datei aktualisiert, aus seinem jeweiligen Ordner.
InformationsquelleAutor der Antwort sunil-natsun
In meinem Fall ein Fehler für eine asp.net mvc razor-Ansicht (.cshtml), /bin-Ordner enthalten sind zwei .kompilierte Dateien für die gleiche Ansicht. Einer von Ihnen war alt und musste gelöscht werden.
Ich hatte auch einen zweiten Blick in die controller-Ansichten Unterordner, die auch benötigt werden, gelöscht.
Den Grund für ein problem ist, dass ich wieder einen Blick aus controller-Ansichten Unterordner in den Ordner " Gemeinsame, aber meine deployment-Prozess (Visual Studio Veröffentlichen) nicht löschen, die veraltete Ansicht und Aussicht.kompilierte Dateien vom server. Sie können anweisen, Visual Studio immer sauber, die Ziel-Ordner, aber dies würde den deployment-Prozess langsamer.
InformationsquelleAutor der Antwort Klotin
Schließlich fand ich das problem. Wenn Sie die Verwendung von MVC-Frameworks wie mich, bitte aktualisieren Sie Ihre MVC-version.In meinem Fall habe ich geändert MVC-4.0.0.0, 4.0.0.1 alle geprüft und Projekt-Referenzen ist "Lokale Kopie" Eigenschaften " auf "True". Nach, dass mein problem gelöst. Bitte überprüfen Sie heraus MVC-version in allen config-Datei(4.0.0.0->4.0.0.1)
Uhr und aus asp-compiler-Warnmeldungen.
InformationsquelleAutor der Antwort Alim İŞÇİ
Ich hatte das gleiche problem als ich anfing mit VWD Express 2012 (nachdem ich mit Express 2010, die verwendet werden, um die Arbeit in Ordnung)
Ging zu meinem hosting-control-panels und geändert ASP.NET version 2.0-Klassisch bis 4.0 Classic gezeigt. Problem verschwunden.
InformationsquelleAutor der Antwort Khalid Gomaa
Für mich, ich hatte ein script, das löscht die Produktions-Ordner und kopiert dann die neuen Dateien.
Skript Fehler beim löschen der Produktion Ordner ordnungsgemäß verlassen, dass der alte und neue Dateien gemischt wurden und zusammen den Fehler verursacht.
Ich manuell den gesamten Ordner gelöscht und neu implementiert erfolgreich...dann das Skript aktualisiert.
InformationsquelleAutor der Antwort Adam
Dieser Fehler kann auch auftreten, wenn Sie haben ein .kompilierte Datei in bin für eine Seite, die nicht mehr Teil des Projekts. Sie erhalten diese anstelle von 404 im wesentlichen. Entfernen Sie die .kompilierte Datei und dann bekommt man 404.
InformationsquelleAutor der Antwort Licht
In meinem Fall ist 'nnn.aspx.xxxxxxxx.zusammengestellt' - Datei entfernt wurde, WebDeploy, da lief ich 2 gleichzeitige Aufträge in der gleichen Jenkins workspace. Der zweite job entfernt einige Dateien während der WebDeploy package Schöpfung.
InformationsquelleAutor der Antwort Der_Meister
Dies ist die Lösung für VS 2008.
Bitte kreuzen Sie die Kästchen wie unten gezeigt, um das Problem zu beheben.
InformationsquelleAutor der Antwort Anson Davis