Gewusst wie: Debuggen für ASP.NET-Anwendungen aktivieren
Dieses Thema gilt für folgende Anwendungsbereiche:
Edition |
Visual Basic |
C# |
F# |
C++ |
Web Developer |
---|---|---|---|---|---|
Express |
|||||
Pro, Premium und Ultimate |
Wenn Sie das Debuggen aktivieren möchten, müssen Sie es auf der Seite Projekteigenschaften und in der Datei Web.config der Anwendung aktivieren.
Tipp
Je nach den aktiven Einstellungen oder der Version unterscheiden sich die Dialogfelder und Menübefehle auf Ihrem Bildschirm möglicherweise von den in der Hilfe beschriebenen. Klicken Sie im Menü Extras auf Einstellungen importieren und exportieren, um die Einstellungen zu ändern. Weitere Informationen finden Sie unter Arbeiten mit Einstellungen.
So aktivieren Sie das ASP.NET-Debuggen in den Projekteigenschaften (Visual Basic/C#)
Klicken Sie im Projektmappen-Explorer mit der rechten Maustaste auf den Namen eines Webprojekts, und wählen Sie Eigenschaftenseiten aus.
Die <Projekt>-Eigenschaftenseiten werden angezeigt.
Klicken Sie auf die Registerkarte Web.
Aktivieren Sie unter Debugger das Kontrollkästchen ASP.NET.
So aktivieren Sie Debuggen in der Datei web.config
Öffnen Sie die Datei web.config mit einem beliebigen Text-Editor oder XML-Parser.
- Allerdings ist es nicht möglich, über einen Webbrowser remote auf die Datei zuzugreifen. Aus Sicherheitsgründen wird Microsoft IIS durch ASP.NET so konfiguriert, dass ein direkter Browserzugriff auf die Web.config-Dateien nicht möglich ist. Wenn Sie versuchen, mit einem Browser auf eine Konfigurationsdatei zuzugreifen, wird der HTTP-Zugriffsfehler 403 (verweigert) ausgegeben.
Web.config ist eine XML-Datei und enthält daher mit Tags markierte, geschachtelte Abschnitte. Das folgende Beispiel zeigt eine typische Web.config-Datei. Sie können die Datei anhand folgender Schritte ändern:
Suchen Sie das <compilation>-Tag. Es kennzeichnet den Anfang des <compilation>-Abschnitts.
Erstellen Sie innerhalb des <compilation>-Tags das debug-Attribut. Im folgenden Beispiel ist debug das zweite im <compilation>-Tag angegebene Attribut. Die Reihenfolge ist jedoch nicht entscheidend.
Bei Attributen wird die Groß-/Kleinschreibung beachtet. Achten Sie deshalb darauf, dass Sie "debug" angeben und nicht "Debug" oder "DEBUG".
Legen Sie debug auf true fest, wie im folgenden Codebeispiel veranschaulicht.
Wenn Sie das debug-Attribut nicht auf true festlegen und versuchen, eine Debugsitzung zu starten, wird ein Dialogfeld angezeigt, das Ihnen anbietet, eine web.config-Datei mit dem festgelegten Attribut zu erstellen. Bestätigen Sie dies, und setzen Sie das Debuggen fort.
Beispiel
<configuration>
<system.web>
<compilation defaultLanguage="VB"
debug="true"
numRecompilesBeforeAppRestart="15">
<compilers>
<compiler language="VB;VBScript"
extension=".cls"
type="Microsoft.VisualBasic.VBCodeProvider,system, Version=1.0.5000.0,
Culture=neutral, PublicKeyToken=b77a5c561934e089" />
< compiler language="C#;Csharp"
extension=".cs"
type="Microsoft.CSharp.CSharpCodeProvider,system, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
</compilers>
<assemblies>
"" <add assembly="ADODB" />
<add assembly="*" />
</assemblies>
<namespaces>
<add namespace="System.Web" />
<add namespace="System.Web.UI" />
<add namespace="System.Web.UI.WebControls" />
<add namespace="System.Web.UI.HtmlControls" />
</namespaces>
</compilation>
</system.web>
</configuration>
Robuste Programmierung
An Web.config-Dateien vorgenommene Änderungen werden von ASP.NET automatisch erkannt und die neuen Konfigurationseinstellungen angewendet. Sie müssen den Computer oder den IIS-Server nicht neu starten, damit die Änderungen wirksam werden.
Eine Website kann mehrere virtuelle Verzeichnisse und Unterverzeichnisse enthalten, in denen möglicherweise Web.config-Dateien vorhanden sind. ASP.NET-Anwendungen erben Einstellungen von Web.config-Dateien auf höheren Ebenen im URL-Pfad. Mithilfe hierarchischer Konfigurationsdateien können Sie die Einstellungen für mehrere ASP.NET-Anwendungen gleichzeitig ändern, z. B. für alle Anwendungen, die sich in der Hierarchie unterhalb der jeweiligen Konfigurationsdatei befinden. Wenn jedoch in einer Datei auf einer niedrigeren Ebene der Hierarchie debug festgelegt ist, wird der aus höheren Ebenen geerbte Wert überschrieben.
So können Sie z. B. in www.microsoft.com/aaa/Web.config debug="true" angeben, und alle Anwendungen im Ordner aaa und in jedem Unterordner von aaa erben diese Einstellung. Wenn sich die ASP.NET-Anwendung also unter www.microsoft.com/aaa/bbb befindet, erbt sie diese Einstellung ebenso wie alle ASP.NET-Anwendungen unter www.microsoft.com/aaa/ccc, www.microsoft.com/aaa/ddd usw. Die einzige Ausnahme stellen Anwendungen dar, die die Einstellungen mit einer eigenen Web.config-Datei auf einer niedrigeren Ebene überschreiben.
Das Aktivieren des Debugmodus wirkt sich entscheidend auf die Leistung der ASP.NET-Anwendung aus. Vergessen Sie nie, den Debugmodus zu deaktivieren, bevor Sie die Releaseversion einer Anwendung bereitstellen oder Leistungsmessungen durchführen.