Fehler beim Verwenden eines Abschnitts, der als allowDefinition = 'MachineToApplication' außerhalb der Anwendungsebene registriert ist

193

Es ist ein Fehler, einen Abschnitt zu verwenden, der über die Anwendungsebene hinaus als allowDefinition = 'MachineToApplication' registriert ist.

Die oberste Zeile auf allen meinen Aspx-Seiten in meinem Verzeichnis / portal / enthält diese Fehlermeldung, und ich weiß, dass sie häufig vorkommt. Ich habe diese Fehlermeldung ohne Ende gegoogelt und sehe viele Beiträge, in denen ich aufgefordert werde, den Ordner / portal / als Anwendung in IIS zu konfigurieren (die ich habe), und weitere Beiträge, in denen mir mitgeteilt wird, dass ich web.configs verschachtelt habe (aber Keines der Postings bietet eine Anleitung für eine Lösung.

Mein Setup ist, dass ich eine web.config in meinem Stammverzeichnis habe und dann versuche ich, ein Firmenportal im Verzeichnis / portal / zu erstellen. Das Verzeichnis / portal / hat eine eigene (notwendige) web.config.

Meine web.config-Zeile 50 sieht folgendermaßen aus:

    <customErrors mode="Off" defaultRedirect="customerrorpage.aspx"/>
    <anonymousIdentification enabled="true"/>
    <authentication mode="Forms"/>
    <membership defaultProvider="MyProvider">

Ich habe also domain.com/web.config UND domain.com/portal/web.config ... damit meine domain.com/portal/default.aspx-Seite nicht geladen wird.

Was ist die wirkliche Lösung dafür? Finde ich irgendwie eine Möglichkeit, meine root-Datei web.config mit meiner / portal / directory web.config zusammenzuführen, oder bin ich hier weit von der Basis entfernt?

Jede Anleitung wäre sehr dankbar!

Jason Weber
quelle
1
Wenn Sie erwarten, dass / portal / eine separate Anwendung unter Ihrer Hauptwebsite ist (was Sie sind, wenn Sie eine web.config dort ablegen), müssen Sie sie als virtuelles Verzeichnis einrichten. Welche IIS-Version verwenden Sie? Normalerweise können Sie mit der rechten Maustaste auf das Verzeichnis klicken und unter Eigenschaften nach der Registerkarte "Verzeichnis" suchen und auf die Schaltfläche "Erstellen" neben dem Anwendungsnamen klicken, der derzeit wahrscheinlich ausgegraut ist. Um den Umfang der übergeordneten Datei web.config einzuschränken, sehen Sie sich das Attribut inheritInChildApplications = "false" an. Teilen Sie mir Ihre IIS-Version mit.
Dash
Hallo Dash. Ich verwende IIS7 und das / portal / soll nur ein Mitarbeiterverzeichnis für unser Unternehmen sein, in dem Mitarbeiter Dokumente speichern, einen Kalender führen und dergleichen. Ich denke, Benni hat zusammengefasst, was Sie gesagt haben - in seiner zweiten Option hat er die IIS-Lösung skizziert. Ich bin sicher, zwischen einer dieser beiden Lösungen kann ich das herausfinden. Vielen Dank für Ihre Zeit beim Lesen dieses Dash und für meine Hilfe. Sobald ich diese Option "Erstellen" sehe, weiß ich, dass ich auf dem Weg bin! Danke noch einmal!
Jason Weber
1
Ich hatte dieses Problem, nachdem ich das Veröffentlichungsprofil definiert hatte, das vor der Veröffentlichung vorkompiliert werden sollte. Der obj-Ordner hatte also eine web.config, die das Projekt beschädigte. Nachdem alles im obj-Ordner gelöscht wurde, funktionierte es wieder.
Rumplin

Antworten:

219

Nur für Hintergrundinformationen; Konfigurationsinformationen für eine ASP.NET-Website werden in einer oder mehreren Web.config-Dateien definiert. Die Konfigurationseinstellungen werden hierarchisch angewendet. Es gibt eine "globale" Web.config-Datei, in der die Basiskonfigurationsinformationen für alle Websites auf dem Webserver aufgeführt sind. Diese Datei befindet sich im %WINDIR%\Microsoft.Net\Framework\version\CONFIGOrdner. Sie können auch eine Web.config-Datei im Stammordner Ihrer Website haben. Diese Web.config-Datei kann Einstellungen überschreiben, die in der "globalen" Web.config-Datei definiert sind, oder neue hinzufügen. Darüber hinaus befinden sich möglicherweise Web.config-Dateien in den Unterordnern Ihrer Website, die neue Konfigurationseinstellungen definieren oder Konfigurationseinstellungen überschreiben, die in Web.config-Dateien weiter oben in der Hierarchie definiert sind.

Bestimmte Konfigurationselemente in Web.config können nicht über die Anwendungsebene hinaus definiert werden. Dies bedeutet, dass sie in der „globalen“ Datei Web.config oder in der Datei Web.config im Stammordner der Website definiert werden müssen. Das <authentication>Element ist ein solches Beispiel. Die obige Fehlermeldung zeigt an, dass sich in einem der Unterordner der Website eine Web.config-Datei befindet, die eines dieser Konfigurationselemente enthält, das nicht über die Anwendungsebene hinaus definiert werden kann.

Quelle: http://scottonwriting.net/sowblog/archive/2010/02/17/163375.aspx

Sie haben die 2 möglichen Ansätze korrekt identifiziert.

1 - Abhängig vom Inhalt Ihrer zweiten web.config und ob Ihr Setup dies zulässt (dh dieselbe Authentifizierungsmethode) - fügen Sie die <authentication>Einstellungen und alle anderen Elemente, die global definiert werden sollen, zur obersten web.config hinzu

2 - Wenn Sie den Inhalt von web.config nicht zusammenführen können, sollten Sie in der Lage sein, den Unterordner in eine Webanwendung in IIS umzuwandeln, indem Sie die in diesem Link archivierten Link unten ausführen. Der ursprüngliche Link funktioniert nicht mehr. (siehe archiviert ) Hoffe das hilft.

benni_mac_b
quelle
8
Ja, Benni, absolut hat das geholfen und die Dinge geklärt - viele Dinge geklärt. Ich schätze Ihre Zeit bei der Beantwortung dieser Frage sehr. Ich habe eine Menge gelernt, indem ich Ihre Antwort gelesen habe, und die Dinge machen jetzt etwas mehr Sinn. Ich denke, ich werde versuchen, die beiden web.config-Dateien - zumindest den Authentifizierungsteil - zusammenzuführen. Wenn dies nicht funktioniert, werde ich die verschiedenen IIS7-Optionen untersuchen. Nochmals vielen Dank für Ihre Zeit und die Informationen, Benni!
Jason Weber
13
Wenn ich ein Webbereitstellungspaket erstelle, verursacht dies dieses Problem beim nächsten Erstellen. Es hat eine Kopie von Web.config in MyWebSiteProject / obj / Debug / ...
Curtis Yallop
4
Nachdem Sie fast einen Tag lang versucht haben, dieses Problem zu lösen, finden Sie schließlich eine ausführliche Antwort, die das Problem tatsächlich erklärt, anstatt zu sagen: Reinigen Sie einfach Ihre Lösung und erstellen Sie sie neu. Danke dafür!
Dr. Paul Jarvis
2
Ich fand das größte Problem hier, dass ein erster Build funktionierte, aber ein nachfolgender Build fehlschlug, weil die Einstellungen, die in der web.config der obersten Ebene zulässig waren, in der web.config, die jetzt in den Ordner obj kopiert wurde, nicht zulässig waren. Der Trick bestand darin, die fehlerhaften Attribute auf der obersten Ebene zu entfernen und den Ordner obj zu entfernen, um eine legale web.config in einen Unterordner zu verschieben. Dies ist natürlich ein Fehler in Visual Studio, aber die Problemumgehung ist unkompliziert, wenn Sie in der web.config der obersten Ebene keine Attribute verwenden müssen, die in der web.config der untergeordneten Ebene unzulässig sind.
Csells
2
Wenn in Visual Studio 2012 und 2013 die Konfigurationsdatei "In Ausgabeverzeichnis kopieren = Immer kopieren" ist, scheint der Veröffentlichungsprozess Kopien der Konfigurationsdatei in den Ordnern "bin" und "obj" abzulegen, wodurch diese Ausnahme ausgelöst wird. Die Lösung für dieses von Tim C. identifizierte Veröffentlichungsproblem besteht darin, die Eigenschaft der Konfigurationsdatei auf Nicht kopieren zu setzen.
kritischer
68

Für das, was es wert ist, hatte ich den Fehler erhalten: "Es ist ein Fehler, einen Abschnitt zu verwenden, der als allowDefinition = 'MachineToApplication' über die Anwendungsebene hinaus registriert ist." und löste es schließlich, indem die Verzeichnisse \ myWebApp \ obj \ Debug und \ myWebApp \ obj \ Release gelöscht wurden. Ich musste auch eine Standard-Startseite festlegen. Aber dann startete die App einwandfrei. HTH.

Aaronius
quelle
24
+1 Das Löschen des OBJ-Ordners scheint eine häufige Lösung zu sein ... stackoverflow.com/a/5175074/188926
Dunc
1
Das Löschen des Inhalts des OBJ-Ordners hat dies auch für mich behoben. Es scheint viele andere mögliche Ursachen für diesen Fehler zu geben. Der Satz, der mir half, die richtige Antwort zu finden, war "beim Veröffentlichen".
Jim Neff
1
Wenn ich einen OBJ-Ordner hätte, würde ich das versuchen.
B. Clay Shannon
Das Festlegen der Standardstartseite hat mir nach dem Löschen des Debug-Ordners nicht geholfen (also stellen Sie sicher, dass Sie beides tun).
LoJo
Versuchte dies und es hat nicht funktioniert. Dann wurde mir klar, dass ich vergessen hatte, meine veröffentlichten Dateien in eine Anwendung in IIS zu konvertieren.
eaglei22
60

Wie RY4N oben sagt, ist es nicht unbedingt die web.config in Ihrem Projektordner, die das Problem verursacht. In einigen Fällen habe ich festgestellt, dass beim Ausführen eines Builds unter dem Debug-Profil Detritus im Debug-Ordner unter dem betreffenden Projekt zurückbleibt. Hier befindet sich häufig eine web.config-Datei, die zu dem obigen Fehler führt, wenn Sie anschließend einen Build unter dem Release-Profil ausführen.

Die Lösung, die hier für mich funktioniert, besteht darin, den gesamten Debug-Ordner zu löschen, den die vorherigen Builds im Projektverzeichnis erstellt haben.

Matthew Brown
quelle
1
Danke Matthew; Ich habe es vor einiger Zeit endlich herausgefunden, aber ja, ich musste in der Version kompilieren, nicht debuggen. Schätzen Sie, dass Sie sich die Zeit genommen haben, um zu antworten!
Jason Weber
3
Danke für den Tipp! Ich habe gerade die Ordner bin und obj in meinem Website-Projekt gelöscht und das Problem beim Neuerstellen behoben.
Paul Stegler
22

Es passierte auch auf meinem Heimcomputer, aber NUR, als ich Build Views für die Release-Konfiguration aktivierte UND eine Release-Konfiguration erstellte. Sonst ist es nicht passiert.

Obwohl die Option "Ansichten erstellen" sehr schön ist, habe ich sie deaktiviert, da dieser "Fehler" immer auftauchte und ich die App nicht ausführen konnte.

Herr der Skripte
quelle
2
Danke, Herr ... das schien den Trick zu tun, zusammen mit ein paar anderen Vorschlägen. Ich weiß es zu schätzen, dass Sie sich die Zeit genommen haben, um zu antworten!
Jason Weber
1
Das passierte mir auch. Nicht sicher warum. Zum Teufel macht die Einstellung "MvcBuildViews" viel weniger nützlich.
Ken Smith
Gibt es eine Möglichkeit, MvcBuildViews nur für die Benutzereinstellungen festzulegen? Wie in der Datei webproject.csproj.user?
C. Tewalt
Nach der Installation von Update 2 für VS 2013 wurde dieser Fehler angezeigt. Ich habe ein Projekt mit einer obersten Ebene und einer verschachtelten untergeordneten Website, die beide als IIS-Anwendungen konfiguriert sind. Das Deaktivieren von MvcBuildViews löste das Problem auch für mich.
Greg Enslow
13

Nur um zu sagen

Wenn Sie ein Upgrade durchführen (z. B. 2008 -> 2010) Ein Projekt Visual Studio erstellt eine Sicherung (sofern Sie dies zulassen) in der Projektlösung, die der neuen Lösung hinzugefügt wird. In der alten Webkonfiguration kann der oben genannte Fehler dann auftreten .

" Die Datei " Web.config " in einem der Unterordner der Website enthält eines dieser Konfigurationselemente, das nicht über die Anwendungsebene hinaus definiert werden kann. " @Benni_mac_b

So beheben Sie das Problem: Entfernen Sie in diesem Szenario einfach den Sicherungsordner aus dem Projekt und der Lösung.

RY4N
quelle
Vielen Dank für diese Informationen, Ryan. Ich habe nur VS 2010. Ich bin mir nicht ganz sicher, was Sie meinen, wenn Sie sagen, entfernen Sie den Sicherungsordner aus dem Projekt und der Lösung. Aber ich werde Ihre Antwort weiter untersuchen. Nochmals vielen Dank, dass Sie sich die Zeit genommen haben, mir zu helfen! Ich habe gerade eine Folgefrage hier gepostet: stackoverflow.com/questions/10414751/…
Jason Weber
12

Ich habe mir einen anderen möglichen Grund dafür ausgedacht.

Ich hatte eine ältere Webanwendung in 2.0 gebaut. Ich habe es auf eine 4.5-Lösung migriert.

Die Anwendung wurde in Visual Studio erstellt und problemlos getestet. Als ich dann versuchte, die Webanwendung zu veröffentlichen, trat dieser Fehler immer wieder auf.

Schließlich stellte ich fest, dass das Problem darin bestand, dass Build Action für die Datei web.config "Embedded Resource" und nicht "Content" war. Außerdem wurde das Verzeichnis "In Ausgabeverzeichnis kopieren" auf "Immer kopieren" und nicht auf "Nicht kopieren" gesetzt. Ich weiß nicht, wann diese Einstellungen vorgenommen wurden, aber ich glaube, es war wieder in der 2.0-Version der Anwendung.

Durch Ändern der Einstellungen für die Datei web.config konnte die Aktion "Veröffentlichen" in Visual Studio 2012 veröffentlicht werden.

Tim C.
quelle
hatte jede andere Lösung da draußen ausprobiert. Dieser half. Mein Projekt wurde im Laufe der Zeit von Visual Studio 2010 auf 2015 migriert, daher war "Immer kopieren" möglicherweise der Standardwert im Jahr 2010
Andreas Rathmayr
Die Eigenschaften für meine web.config sind auf zwei beschränkt: FileName und FullPath; Andernfalls würde ich überprüfen, was die Build-Aktion dafür war.
B. Clay Shannon
11

Ich hatte das gleiche Problem in einem MVC-Projekt. Der Fehler trat auf, als ich versuchte zu veröffentlichen. Es stellte sich heraus, dass der obj-Ordner leer sein sollte (oder zumindest keine enthalten sollte web.config).

Laufen hat Cleanmir nicht geholfen.

Ich habe das Problem gelöst, indem ich den objOrdner vor dem Erstellen bereinigt habe (das Erstellen des Projekts dauert in meinem Fall sowieso nicht so lange).

Ich habe das Projekt entladen und dem BeforeBuild-Ziel Folgendes hinzugefügt

<Target Name="BeforeBuild">
    <Delete Files="$(SolutionDir)\$(ProjectDir)\bin\**\*.*" />
    <Delete Files="$(SolutionDir)\$(ProjectDir)\obj\**\*.*" />
    <RemoveDir Directories="$(SolutionDir)\$(ProjectDir)\bin" />
    <RemoveDir Directories="$(SolutionDir)\$(ProjectDir)\obj" />
    <Message Text="Clean obj/bin from web project" />
</Target>

Hoffe das hilft

Rik
quelle
7

"Es ist ein Fehler, einen Abschnitt zu verwenden, der über die Anwendungsebene hinaus als allowDefinition = 'MachineToApplication' registriert ist. Dieser Fehler kann dadurch verursacht werden, dass ein virtuelles Verzeichnis in IIS nicht als Anwendung konfiguriert ist."

Ich hatte dieses Problem in VS.NET. Es stellte sich heraus, dass ich bei der Konfiguration einiger Konfigurationstransformationen fälschlicherweise die Eigenschaft "Immer kopieren" der Datei "Web.config" festgelegt hatte. Normalerweise setze ich meine Transformationsdateien auf "Immer kopieren", lasse aber die Stammdatei "web.config" als "Nicht kopieren".

Beachten Sie dies, da durch Ändern der Eigenschaften von web.config auch alle verschachtelten Transformationen geändert werden.

Also, um zu beheben:

1) Ändern Sie web.config in "Nicht kopieren".

2) Wenn Sie Konfigurationsumwandlungen verwenden, setzen Sie diese optional auf "Immer kopieren".

3) Löschen Sie die Ordner obj und bin aus der Lösung (diese sind möglicherweise nicht sichtbar. Wählen Sie daher den Projektknoten im Projektmappen-Explorer aus und klicken Sie auf die Symbolleistenschaltfläche "Alle Dateien anzeigen".

4) Veröffentlichen

Hat für mich gearbeitet.

ben
quelle
5

Ich habe diesen Fehler nur beim Veröffentlichen der Anwendung festgestellt.

Die Eigenschaften der Dateien web.config (und transformations) wurden wie folgt festgelegt:

  • Build Action - None
  • Copy to Output - Always.

Die Lösung bestand darin, die Einstellungen zu ändern in:

  • Build Action - Content
  • Copy to Output - Do not Copy
Hugo
quelle
4

Ich hatte auch dieses Problem und es trat auf, nachdem ich den Veröffentlichungsassistenten verwendet hatte, um meine Website im Web zu veröffentlichen.

Nachdem ich mich viel umgesehen hatte, stieß ich auf diesen Fehlerbericht auf der Connect-Website unter https://connect.microsoft.com/VisualStudio/feedback/details/779737/error-allowdefinition-machinetoapplication-beyond-application-level

Ein MS-Mitarbeiter antwortete und erklärte nicht nur, warum dies ein Problem war, das beim Veröffentlichen auftrat, sondern fügte auch eine vorübergehende Problemumgehung hinzu, die das Problem für mich behebte.

Pat Long - Munkii Yebee
quelle
4

Löschen Sie das virtuelle Verzeichnis und erstellen Sie es erneut. Klicken Sie mit der rechten Maustaste und konvertieren Sie das virtuelle Verzeichnis in " Anwendung ".

sudhAnsu63
quelle
3

Klicken Sie im Web.configProjektmappen-Explorer auf die Datei, klicken Sie mit der rechten Maustaste auf "Eigenschaften" und wechseln Sie zu "In Ausgabeverzeichnis kopieren: Nicht kopieren".

Geben Sie hier die Bildbeschreibung ein

nPcomp
quelle
1

Für mich war der Grund, dass sich der obj-Ordner unter dem Website-Ordner befand und mehrere web.config angezeigt wurden, nachdem verschiedene Konfigurationen erstellt wurden. Ich habe das Problem unter vs2012 gelöst, indem ich den Ordner obj von der Website entfernt habe. Zu diesem Zweck habe ich jeder Konfiguration in der Website-Projektdatei das Handbuch (im Editor) $ (SolutionDir) \ Obj \ $ (Konfiguration) hinzugefügt.

Mikhail.Gorbulsky
quelle
1

Ich hatte das gleiche Problem, als ich die Site veröffentlichte. Wenn ich die Site erstelle, bekomme ich keine Probleme, aber beim Veröffentlichen würde ich diesen schrecklichen Fehler bekommen:

"Es ist ein Fehler, einen Abschnitt zu verwenden, der über die Anwendungsebene hinaus als allowDefinition = 'MachineToApplication' registriert ist. Dieser Fehler kann dadurch verursacht werden, dass ein virtuelles Verzeichnis in IIS nicht als Anwendung konfiguriert ist."

Ich habe alles versucht, was hier in diesem Beitrag angegeben wurde, und es hat mir geholfen, einfach ein neues Veröffentlichungsprofil mit genau dem zu erstellen, das ich verwendet habe, und das funktioniert gut. Verstehen Sie den Fehler nicht mit dem neuen Profil aber mit dem alten machen. Ich bin mir nicht sicher, was der Unterschied ist, aber zumindest kann ich mein MVC-Projekt veröffentlichen.

Hoffe das hilft jemandem !!

FabianVal
quelle
1

Hier ist ein weiterer Grund: Wenn Sie Ihre gesamte Web-App in einen eigenen Unterordner kopieren, wird dieser Fehler angezeigt. Ich habe es geschafft, dies auf einer alten Site zu tun, als ich von einem Computer auf einen anderen kopiert habe. Ich wurde nur gebeten, mir die Site nach einer Pause von ungefähr 2 Jahren anzusehen, und der Fehler ist aufgetreten. Ich habe einiges herausgefunden, da ich keine mehreren Konfigurationsdateien hatte.

Martin Smellworse
quelle
1

Ich hatte dieses Problem und löste es durch Reinigen meiner Lösung von alten Baugruppen usw.

von vs: Build> Clean Solution

dann neu erstellen.

kennydust
quelle
1

Windows-Start -> Sites öffnen -> IIS -> Klicken Sie mit der rechten Maustaste auf Ihre Site -> Website verwalten -> Erweiterte Einstellungen -> Physischen Pfad durchsuchen -> versuchen Sie, den Unterordner des zu wählen, sobald Sie gerade ausgewählt sind.

Die Logik ist, dass die Webkonfigurationsdatei im Unterordner versucht, Änderungen vorzunehmen, und dies ist nicht zulässig. Dies muss der ausgewählte Ordner sein: http://scottonwriting.net/sowblog/archive/2010/02/17/163375.aspx

Subodh Pradhan
quelle
1

Ich erhalte diesen Fehler auch, wenn ich versuche, eine Unterwebsite in der Website bereitzustellen.

Die Lösung ist:

  1. Sie müssen einige Konfigurationsregisterkarten wie Profil , Mitgliedschaft , Rollenmanager , Sitzungsstatus in der Sub-Datei web.config entfernen
  2. Ändern Sie die Authentifizierung in Keine als: <authentication mode="None" />
  3. Gehen Sie zu IIS und klicken Sie mit der rechten Maustaste auf den Unterordner - > Anwendung hinzufügen.
  4. Setzen Sie IIS zurück, um dieses Problem zu beheben.

Wenn Sie ein anderes Problem haben, zögern Sie nicht, mich anzurufen. Vielleicht finde ich Hilfe.

Trung
quelle
1

Ich habe diesen Fehler auf localhost in Visual Studio 2017 erhalten, und ein einfacher Neustart von Visual Studio hat das Problem behoben.

Mir ist klar, dass dieses Problem auch durch mehr als eine web.config verursacht werden kann. eine in einem Unterordner zum Beispiel. Wenn Sie mehrere web.config-Dateien absichtlich für eine andere Anwendung haben: Stellen Sie sicher, dass das Verzeichnis nicht als virtuelles Verzeichnis angezeigt wird.

Josh Harris
quelle
0

Stellen Sie sicher, dass Sie nicht in die Falle geraten, über localchost / mysite.test falsch auf Ihre lokale Site zuzugreifen. Dies sollte mysite.test sein, was Ihnen diesen Fehler gibt.

Wenn Sie wie localhost / dir_name auf Ihre Site zugreifen, fällt in diesem Fall Ihre web.conf unter die Stammebene und damit auf diesen Fehler.

Hammad Khan
quelle
0

Ich habe Apps migriert und die App enthielt mehrere Apps (mehrere web.configs). Ich ging in IIS, klickte mit der rechten Maustaste auf die Unterordner und dann auf "In Anwendung konvertieren" und es funktionierte.

sojim2
quelle
0

Ich habe diesen Fehler anders als alle anderen bekommen:

Ich habe mit dem Webbereitstellungsprojekt von vs2010 auf vs2012 und ein neues Webveröffentlichungsprofil migriert.

Ich habe in vs2012 ein neues Web-Publish-Projekt erstellt, um es im Dateisystem zu veröffentlichen (wir haben einen separaten Installer-Builder, dies ist eine kommerzielle App), und ich habe in einem Ordner veröffentlicht, der sich innerhalb des vorhandenen Web-Projekts befindet und mit IIS verknüpft ist.

Dies verursachte den Fehler während der Veröffentlichung, der mich zuerst verwirrte, weil ich im Dateisystem veröffentlichte, nicht im IIS (dachte ich).

Die Lösung bestand darin, die Veröffentlichung in einen Ordner außerhalb des Webprojekts zu ändern.

JohnC
quelle
0

Es war in Ordnung, localhostaber als ich eine Version auf dem Server veröffentlichte, startete ich den gleichen Fehler für einige Seiten. Dann habe ich die Lösung aufgeräumt und neu erstellt und veröffentlicht, die Dinge wurden behoben.

Baqer Naqvi
quelle
0

Manchmal ist die einfache Antwort am besten. Ich hatte zwei web.config-Dateien in meinem Projekt. Auf der Hauptebene musste ich die Änderung vornehmen, um mein Sitzungszeitlimit zu beheben (was dieses Problem auslöste). Ich hatte eine separate Konfigurationsdatei in meinem Razor Views-Verzeichnis, die Einstellungen für Razor und seine Ansichten enthielt. Ich habe dort einen Abschnitt hinzugefügt (nicht auf Anwendungsebene!). Ohne zu bemerken, dass ich zwei separate web.config-Dateien hatte, habe ich alles versucht, außer nach dem Offensichtlichen zu suchen.

Guy Schalnat
quelle
0

Mein Fehler war das versehentliche Kopieren und Einfügen einer web.config in einen anderen Ordner auf dem Webserver

krilovich
quelle
0

Ich habe diesen Fehler erhalten, als ich vergessen habe, das veröffentlichte Projekt in eine Anwendung in IIS zu konvertieren.

eaglei22
quelle