Ανίχνευση επιπέδου σελίδας Asp.Net, εντοπισμός σφαλμάτων, χειρισμός σφαλμάτων [Παράδειγμα]

Σε οποιαδήποτε εφαρμογή, είναι βέβαιο ότι θα προκύψουν σφάλματα κατά τη διαδικασία ανάπτυξης. Είναι σημαντικό να μπορείτε να ανακαλύπτετε σφάλματα σε πρώιμο στάδιο.

Στο Visual Studio, είναι δυνατό να γίνει αυτό για εφαρμογές ASP.Net. Το Visual Studio χρησιμοποιείται για τον εντοπισμό σφαλμάτων και διαθέτει τεχνικές διαχείρισης σφαλμάτων για το ASP.Net.

Τι είναι ο εντοπισμός σφαλμάτων στο ASP.NET;

Ο εντοπισμός σφαλμάτων είναι η διαδικασία προσθήκης σημείων διακοπής σε μια εφαρμογή. Αυτά τα σημεία διακοπής χρησιμοποιούνται για την παύση της εκτέλεσης ενός προγράμματος που εκτελείται. Αυτό επιτρέπει στον προγραμματιστή να κατανοήσει τι συμβαίνει σε ένα πρόγραμμα σε μια συγκεκριμένη χρονική στιγμή.

Ας πάρουμε ένα παράδειγμα προγράμματος. Το πρόγραμμα εμφανίζει στο χρήστη μια συμβολοσειρά "Εκτελούμε διόρθωση σφαλμάτων". Ας υποθέσουμε ότι όταν εκτελούμε την εφαρμογή, για κάποιο λόγο, η συμβολοσειρά δεν εμφανίζεται. Για να εντοπίσουμε το πρόβλημα πρέπει να προσθέσουμε ένα σημείο διακοπής. Μπορούμε να προσθέσουμε ένα σημείο διακοπής στη γραμμή κώδικα που εμφανίζει τη συμβολοσειρά. Αυτό το σημείο διακοπής θα διακόψει την εκτέλεση του προγράμματος. Σε αυτό το σημείο, ο προγραμματιστής μπορεί να δει τι μπορεί να πάει στραβά. Ο προγραμματιστής διορθώνει το πρόγραμμα ανάλογα.

Εδώ στο παράδειγμα, θα χρησιμοποιήσουμε την 'Εφαρμογή επίδειξης' που δημιουργήθηκε σε προηγούμενα κεφάλαια. Στο παρακάτω παράδειγμα, θα δούμε

  • Πώς να κάνετε την εφαρμογή επίδειξης να εμφανίζει μια συμβολοσειρά.
  • Πώς να προσθέσετε σημεία διακοπής σε μια εφαρμογή.
  • Τρόπος εντοπισμού σφαλμάτων της εφαρμογής χρησιμοποιώντας αυτό το σημείο διακοπής.

Τρόπος εντοπισμού σφαλμάτων μιας εφαρμογής στο ASP.NET

Ακολουθούν τα βήματα για τη δημιουργία μιας εφαρμογής επίδειξης, την προσθήκη σημείων διακοπής και τον εντοπισμό σφαλμάτων στο ASP.Net:

Βήμα 1) Ανοίξτε την εφαρμογή στο Visual Studio
Ας βεβαιωθούμε πρώτα ότι έχουμε την εφαρμογή web μας ανοιχτή στο Visual Studio. Βεβαιωθείτε ότι η εφαρμογή επίδειξης είναι ανοιχτή στο Visual Studio.

Εντοπισμός σφαλμάτων μιας εφαρμογής στο ASP.NET

Βήμα 2) Τώρα ανοίξτε το αρχείο Demo.aspx.cs και προσθέστε την παρακάτω γραμμή κώδικα.

  • Απλώς προσθέτουμε τη γραμμή κώδικα Response.Write για να εμφανίσουμε μια συμβολοσειρά.
  • Έτσι, όταν εκτελείται η εφαρμογή, θα πρέπει να εμφανίζει τη συμβολοσειρά "Εμείς κάνουμε εντοπισμό σφαλμάτων" στο πρόγραμμα περιήγησης ιστού.

Εντοπισμός σφαλμάτων μιας εφαρμογής στο ASP.NET

namespace DemoApplication
{  
  public partial class Demo : System.Web.UI.Page  
		{  
		  protected void Page_Load(object sender, EventArgs e)  
		  {
		    Response.Write("We are debugging"); 
		  }
		}
}

Βήμα 3) Προσθέστε ένα σημείο διακοπής στην εφαρμογή
Ένα σημείο διακοπής είναι ένα σημείο στο Visual Studio όπου θέλετε να σταματήσει η εκτέλεση του προγράμματος.

Εντοπισμός σφαλμάτων μιας εφαρμογής στο ASP.NET

  1. Για να προσθέσετε ένα σημείο διακοπής, πρέπει να κάνετε κλικ στη στήλη όπου θέλετε να εισαχθεί το σημείο διακοπής. Έτσι, στην περίπτωσή μας, θέλουμε το πρόγραμμά μας να σταματήσει στη γραμμή κώδικα "Response.Write". Δεν χρειάζεται να προσθέσετε καμία εντολή για να προσθέσετε ένα σημείο διακοπής. Απλά πρέπει να κάνετε κλικ στη γραμμή στην οποία θέλετε να προσθέσετε ένα σημείο διακοπής.
  2. Μόλις γίνει αυτό, θα παρατηρήσετε ότι ο κωδικός σημειώνεται με κόκκινο χρώμα. Επίσης, εμφανίζεται ένα κόκκινο συννεφάκι στη στήλη δίπλα στη γραμμή κώδικα.

Σημείωση: - Μπορείτε να προσθέσετε πολλά σημεία διακοπής σε μια εφαρμογή

Βήμα 4) Εκτελέστε την εφαρμογή σε λειτουργία εντοπισμού σφαλμάτων
Τώρα πρέπει να εκτελέσετε την εφαρμογή σας χρησιμοποιώντας τη λειτουργία εντοπισμού σφαλμάτων. Στο Visual Studio, επιλέξτε την επιλογή μενού Debug->Start Debugging.

Εντοπισμός σφαλμάτων μιας εφαρμογής στο ASP.NET

Παραγωγή:-

Εντοπισμός σφαλμάτων μιας εφαρμογής στο ASP.NET

Όταν εκτελέσετε όλα τα βήματα σωστά, η εκτέλεση του προγράμματος θα διακοπεί. Το Visual Studio θα μεταβεί στο σημείο διακοπής και θα σημειώσει τη γραμμή κώδικα με κίτρινο χρώμα.

Τώρα, εάν ο προγραμματιστής αισθάνεται ότι ο κώδικας είναι λανθασμένος, η εκτέλεση μπορεί να διακοπεί. Ο κωδικός μπορεί στη συνέχεια να τροποποιηθεί ανάλογα. Για να συνεχίσει να συνεχίζει το πρόγραμμα, ο προγραμματιστής πρέπει να κάνει κλικ στο κουμπί F5 στο πληκτρολόγιο.

Τι είναι το Tracing στο ASP.NET;

Η ανίχνευση εφαρμογών επιτρέπει σε κάποιον να δει εάν τυχόν σελίδες που ζητήθηκαν καταλήγουν σε σφάλμα. Όταν η ανίχνευση είναι ενεργοποιημένη, μια επιπλέον σελίδα που ονομάζεται trace.axd προστίθεται στην εφαρμογή. (Δείτε την εικόνα παρακάτω). Αυτή η σελίδα επισυνάπτεται στην εφαρμογή. Αυτή η σελίδα θα εμφανίσει όλα τα αιτήματα και την κατάστασή τους.

Ανίχνευση στο ASP.NET

Πώς να ενεργοποιήσετε την ανίχνευση για μια εφαρμογή στο ASP.NET

Ας δούμε πώς να ενεργοποιήσετε την ανίχνευση για ένα Εφαρμογή ASP.Net:

Βήμα 1) Ας δουλέψουμε στην 'Εφαρμογή επίδειξης' μας. Ανοίξτε το αρχείο web.config από την Εξερεύνηση λύσεων.

Ενεργοποίηση ανίχνευσης για μια εφαρμογή στο ASP.NET

Βήμα 2) Προσθέστε την παρακάτω γραμμή κώδικα στο αρχείο Web.config.

Η δήλωση ίχνους χρησιμοποιείται για την ενεργοποίηση της ανίχνευσης για την εφαρμογή.

  • Χρησιμοποιείται το 'requestLimit' στη δήλωση ίχνους. Καθορίζει τον αριθμό των αιτημάτων σελίδας που πρέπει να εντοπιστούν.
  • Στο παράδειγμά μας, δίνουμε ένα όριο 40. Δίνουμε όριο επειδή μια υψηλότερη τιμή θα υποβαθμίσει την απόδοση της εφαρμογής.

Ενεργοποίηση ανίχνευσης για μια εφαρμογή στο ASP.NET

<?xml version="1.0" encoding="utf-8"?>
<! --
For more information on how to configure your ASP.NET application, please visit http://go.microsoft.com/fwlink/?LinkId=169433 
-->
<configuration>
	<system.web>
		<compilation debug="true" targetFramework="4.0" />
		<httpRuntime targetFramework="4.0” />
		
		 <trace enable="true" pageOutput="false" requestLimit="40" localOnly="false"/>
		
	</system.web>
</configuration>

Εκτελέστε την "demoapplication" στο Visual Studio.

Παραγωγή:-

Ενεργοποίηση ανίχνευσης για μια εφαρμογή στο ASP.NET

Αν τώρα περιηγηθείτε στη διεύθυνση URL - http://localhost:53003/trace.axd , θα δείτε τις πληροφορίες για κάθε αίτημα. Εδώ μπορείτε να δείτε εάν παρουσιάζονται σφάλματα σε μια εφαρμογή. Οι ακόλουθοι τύποι πληροφοριών εμφανίζονται στην παραπάνω σελίδα

  1. Η ώρα της αίτησης για την ιστοσελίδα.
  2. Το όνομα της ιστοσελίδας που ζητείται.
  3. Ο κωδικός κατάστασης του αιτήματος Ιστού. (κωδικός κατάστασης 200 σημαίνει ότι το αίτημα είναι επιτυχές).
  4. Προβολή λεπτομερειών που επιτρέπετε να προβάλετε περισσότερες λεπτομέρειες σχετικά με το αίτημα Ιστού. Ένα παράδειγμα αυτού φαίνεται παρακάτω. Μια σημαντική λεπτομερής πληροφορία που παρέχεται είναι οι πληροφορίες κεφαλίδας. Αυτές οι πληροφορίες δείχνουν ποιες είναι οι πληροφορίες που αποστέλλονται στην κεφαλίδα κάθε αιτήματος Ιστού.

Ενεργοποίηση ανίχνευσης για μια εφαρμογή στο ASP.NET

Ανίχνευση επιπέδου σελίδας στο ASP.NET

Ανίχνευση επιπέδου σελίδας στο ASP.Net εμφανίζει όλες τις γενικές πληροφορίες σχετικά με μια ιστοσελίδα κατά την επεξεργασία της. Αυτό είναι χρήσιμο για τον εντοπισμό σφαλμάτων εάν μια σελίδα δεν λειτουργεί για οποιονδήποτε λόγο. Το Visual Studio παρέχει λεπτομερείς πληροφορίες σχετικά με διάφορες πτυχές της σελίδας και πληροφορίες, όπως η ώρα για κάθε μέθοδο που καλείται στο αίτημα Ιστού.

Για παράδειγμα, εάν η εφαρμογή Ιστού σας αντιμετωπίζει πρόβλημα απόδοσης, αυτές οι πληροφορίες μπορούν να βοηθήσουν στον εντοπισμό σφαλμάτων του προβλήματος. Αυτές οι πληροφορίες εμφανίζονται όταν η εφαρμογή εκτελείται στο Visual Studio.

Πώς να ενεργοποιήσετε την ανίχνευση σε επίπεδο σελίδας στο ASP.NET

Ας δούμε πώς να ενεργοποιήσετε την ανίχνευση επιπέδου σελίδας για μια εφαρμογή ASP.Net:

Βήμα 1) Ας δουλέψουμε στην Επίδειξη Εφαρμογή μας. Ανοίξτε το αρχείο demo.aspx από την Εξερεύνηση λύσεων

Ανίχνευση επιπέδου σελίδας στο ASP.NET

Βήμα 2) Προσθέστε την παρακάτω γραμμή κώδικα για να ενεργοποιήσετε την ανίχνευση σελίδας. Στη δήλωση Σελίδα, απλώς προσθέστε τη γραμμή Trace=”true”. Αυτή η γραμμή κώδικα θα επιτρέψει την ανίχνευση επιπέδου σελίδας.

Ανίχνευση επιπέδου σελίδας στο ASP.NET

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Demo.aspx.cs" Inherits="DemoApplication.Demo" %>

	<!DOCTYPE html>
<html xmlns="http://www.w3.ore/1999/xhtml">
<head runat="server">
	<title></title>
</head>	
	<body>
	  <form id="form1" runat="server”>
	  </form>
</body>
</html>

Εκτελέστε την εφαρμογή στο Visual Studio.

Παραγωγή:-

Ανίχνευση επιπέδου σελίδας στο ASP.NET

Τώρα, όταν εμφανίζεται η ιστοσελίδα Demo.aspx, θα λάβετε πολλές πληροφορίες για τη σελίδα. Πληροφορίες όπως ο χρόνος για κάθε πτυχή του κύκλου ζωής της σελίδας εμφανίζονται σε αυτήν τη σελίδα.

Χειρισμός σφαλμάτων: Εμφάνιση προσαρμοσμένης σελίδας σφαλμάτων

In ASP.NET, μπορείτε να έχετε προσαρμοσμένες σελίδες σφαλμάτων που εμφανίζονται στους χρήστες. Εάν μια εφαρμογή περιέχει οποιοδήποτε είδος σφάλματος, μια προσαρμοσμένη σελίδα θα εμφανίσει αυτό το σφάλμα στον χρήστη.

Στο παράδειγμά μας, θα προσθέσουμε πρώτα μια σελίδα HTML. Αυτή η σελίδα θα εμφανίσει μια συμβολοσειρά στον χρήστη "Ψάχνουμε το πρόβλημα". Στη συνέχεια, θα προσθέσουμε κάποιο κωδικό σφάλματος στη σελίδα demo.aspx, έτσι ώστε να εμφανίζεται η σελίδα σφάλματος.

Ας ακολουθήσουμε τα παρακάτω βήματα

Βήμα 1) Ας δουλέψουμε στην Επίδειξη Εφαρμογή μας. Ας προσθέσουμε μια σελίδα HTML στην εφαρμογή

  1. Κάντε δεξί κλικ στην εφαρμογή Demo στην Εξερεύνηση λύσεων
  2. Επιλέξτε την επιλογή μενού 'Προσθήκη'->Σελίδα HTML

Διαχείριση σφαλμάτων στο ASP.Net

Βήμα 2) Στο επόμενο βήμα, πρέπει να δώσουμε ένα όνομα στη νέα σελίδα HTML.

  1. Δώστε το όνομα ως "Σελίδα Σφάλματος".
  2. Κάντε κλικ στο κουμπί «OK» για να προχωρήσετε.

Διαχείριση σφαλμάτων στο ASP.Net

Βήμα 3) Η Σελίδα Σφάλματος θα ανοίξει αυτόματα στο Visual Studio. Εάν μεταβείτε στην Εξερεύνηση λύσεων, θα δείτε το αρχείο να προστέθηκε.

Διαχείριση σφαλμάτων στο ASP.Net

Προσθέστε τη γραμμή κώδικα "Ψάχνουμε για το πρόβλημα" στη σελίδα HTML. Δεν χρειάζεται να κλείσετε το αρχείο HTML πριν κάνετε την αλλαγή στο αρχείο web.config.

Διαχείριση σφαλμάτων στο ASP.Net

<!DOCTYPE html>
<html xmlns="http://www.w3.ore/1999/xhtml">
<head runat="server">
	<title></title>
</head>	
	<body>
	  We are looking into the problem
	</body>
</html>

Βήμα 4) Τώρα πρέπει να κάνετε μια αλλαγή στο αρχείο web.config. Αυτή η αλλαγή θα ειδοποιήσει ότι κάθε φορά που εμφανίζεται ένα σφάλμα στην εφαρμογή, πρέπει να εμφανίζεται η προσαρμοσμένη σελίδα σφάλματος.

Η ετικέτα "customErrors" επιτρέπει τον ορισμό μιας προσαρμοσμένης σελίδας σφάλματος. Η ιδιότητα defaultRedirect ορίζεται στο όνομα της σελίδας προσαρμοσμένου σφάλματος που δημιουργήθηκε στο προηγούμενο βήμα.

Διαχείριση σφαλμάτων στο ASP.Net

<configuration>
	<system.web>
		<compilation debug="true" targetFramework="4.0" />
		<httpRuntime targetFramework="4.0” />
		
		 <customErrors mode="On" defaultRedirect="ErrorPage.html">
</customErrors>

		
	</system.web>
</configuration>

Βήμα 5) Τώρα ας προσθέσουμε έναν ελαττωματικό κώδικα στη σελίδα demo.aspx.cs. Ανοίξτε αυτήν τη σελίδα κάνοντας διπλό κλικ στο αρχείο στην Εξερεύνηση λύσεων

Διαχείριση σφαλμάτων στο ASP.Net

Προσθέστε τον παρακάτω κώδικα στο αρχείο Demo.aspx.cs.

  • Αυτές οι γραμμές κώδικα έχουν σχεδιαστεί για να διαβάζουν τις γραμμές ενός κειμένου από ένα αρχείο.
  • Το αρχείο υποτίθεται ότι βρίσκεται στη μονάδα δίσκου D με το όνομα "Example.txt".
  • Αλλά στην περίπτωσή μας, αυτό το αρχείο δεν υπάρχει πραγματικά. Επομένως, αυτός ο κωδικός θα οδηγήσει σε σφάλμα κατά την εκτέλεση της εφαρμογής.

Διαχείριση σφαλμάτων στο ASP.Net

namespace DemoApplication
{  

  public partial class Demo : System.Web.UI.Page  
		{  
		  protected void Page_Load(object sender, EventArgs e)  
		  {
		   String path = @"D:\Example.txt";
		   string[] lines;
		   lines = File.ReadAllLines(path);
		  }
		}
}

Τώρα εκτελέστε τον κώδικα μέσα Visual Studio και θα πρέπει να λάβετε την παρακάτω έξοδο.

Παραγωγή:-

Διαχείριση σφαλμάτων στο ASP.Net

Η παραπάνω σελίδα δείχνει ότι προκλήθηκε σφάλμα στην εφαρμογή. Ως αποτέλεσμα, η σελίδα Error.html εμφανίζεται στον χρήστη.

ASP.NET Unhandled Exception

Ακόμη και στα καλύτερα σενάρια, μπορεί να υπάρξουν περιπτώσεις σφαλμάτων που απλώς δεν προβλέπονται.

Ας υποθέσουμε ότι ένας χρήστης περιηγείται σε λάθος σελίδα στην εφαρμογή. Αυτό είναι κάτι που δεν μπορεί να προβλεφθεί. Σε τέτοιες περιπτώσεις, το ASP.Net μπορεί να ανακατευθύνει τον χρήστη στο errorpage.html.

Ας δούμε ένα παράδειγμα για αυτό.

  • Θα χρησιμοποιήσουμε την ίδια 'Εφαρμογή επίδειξης' που έχει το Errorpage.html.
  • Και θα προσπαθήσουμε να προβάλουμε μια ιστοσελίδα που δεν υπάρχει στην εφαρμογή μας.
  • Σε αυτήν την περίπτωση, θα πρέπει να ανακατευθυνθούμε στη σελίδα μας ErrorPage.html. Ας δούμε τα βήματα για να το πετύχουμε αυτό.

Βήμα 1) Ας δουλέψουμε στην Επίδειξη Εφαρμογή μας. Ανοίξτε το αρχείο Global.asax.cs από την Εξερεύνηση λύσεων

ASP.NET Unhandled Exception

ΣΗΜΕΊΩΣΗ: Το αρχείο global.asax.cs χρησιμοποιείται για την προσθήκη κώδικα που θα είναι εφαρμόσιμος σε όλες τις σελίδες της εφαρμογής.

Βήμα 2) Προσθέστε την παρακάτω γραμμή κώδικα στο global.asax.cs. Αυτές οι γραμμές θα χρησιμοποιηθούν για τον έλεγχο για σφάλματα και την εμφάνιση της σελίδας ErrorPage.html ανάλογα.

ASP.NET Unhandled Exception

namespace DemoApplication
{  

  public partial class Demo : System.Web.UI.Page  
		{  
		  protected void Application_Error(object sender, EventArgs e)  
		  {
		?    HttpException lastErrorWrapper = Server.GetLastError() as HttpException;

			if(lastErrorWrapper.GetHttpCode() == 404)
			Server.T ransfer("~/ErrorPage.html");
		  }
		}
}

Επεξήγηση κώδικα: -

  1. Η πρώτη γραμμή είναι ο χειριστής συμβάντων Application_Error. Αυτό το συμβάν καλείται κάθε φορά που παρουσιάζεται σφάλμα σε μια εφαρμογή. Σημειώστε ότι το όνομα του συμβάντος πρέπει να είναι "Application_Error". Και οι παράμετροι πρέπει να είναι όπως φαίνεται παραπάνω.
  2. Στη συνέχεια, ορίζουμε ένα αντικείμενο της κλάσης τύπου HttpException. Αυτό είναι ένα τυπικό αντικείμενο που θα περιέχει όλες τις λεπτομέρειες του σφάλματος. Στη συνέχεια χρησιμοποιούμε τη μέθοδο Server.GetLastError για να λάβουμε όλες τις λεπτομέρειες του τελευταίου σφάλματος που παρουσιάστηκε στην εφαρμογή.
  3. Στη συνέχεια ελέγχουμε αν ο κωδικός σφάλματος του τελευταίου σφάλματος είναι 404. (Ο κωδικός σφάλματος 404 είναι ο τυπικός κωδικός που επιστρέφεται όταν ένας χρήστης περιηγείται σε μια σελίδα που δεν βρέθηκε). Στη συνέχεια, μεταφέρουμε τον χρήστη στη σελίδα ErrorPage.html εάν ο κωδικός σφάλματος ταιριάζει.

Τώρα εκτελέστε τον κώδικα στο Visual Studio και θα πρέπει να λάβετε την παρακάτω έξοδο

Παραγωγή:-

Περιηγηθείτε στη σελίδα http://localhost:53003/Demo1.aspx . Να θυμάστε ότι το Demo1.aspx δεν υπάρχει στην εφαρμογή μας. Στη συνέχεια θα λάβετε την παρακάτω έξοδο.

Μη χειριζόμενη εξαίρεση στο ASP.NET

Η παραπάνω σελίδα δείχνει ότι προκλήθηκε σφάλμα στην εφαρμογή. Ως αποτέλεσμα, η σελίδα Error.html εμφανίζεται στον χρήστη.

ASP.NET Σφάλμα καταγραφής

Με την καταγραφή σφαλμάτων εφαρμογής, βοηθά τον προγραμματιστή να εντοπίσει σφάλματα και να επιλύσει το σφάλμα σε μεταγενέστερο χρονικό σημείο. Το ASP.Net έχει τη δυνατότητα καταγραφής σφαλμάτων. Αυτό γίνεται στο αρχείο Global.asax.cs όταν καταγράφεται το σφάλμα. Κατά τη διαδικασία λήψης, το μήνυμα σφάλματος μπορεί να γραφτεί σε ένα αρχείο καταγραφής.

Ας δούμε ένα παράδειγμα για αυτό.

  • Θα χρησιμοποιήσουμε την ίδια εφαρμογή επίδειξης που έχει το Errorpage.html.
  • Και θα προσπαθήσουμε να προβάλουμε μια ιστοσελίδα που δεν υπάρχει στην εφαρμογή μας.
  • Σε αυτήν την περίπτωση, θα πρέπει να ανακατευθυνθούμε στη σελίδα μας ErrorPage.html.
  • Και ταυτόχρονα, θα γράψουμε το μήνυμα σφάλματος σε ένα αρχείο καταγραφής. Ας δούμε τα βήματα για να το πετύχουμε αυτό.

Βήμα 1) Ας δουλέψουμε στην Επίδειξη Εφαρμογή μας. Ανοίξτε το αρχείο Global.asax.cs από την Εξερεύνηση λύσεων

ASP.NET Σφάλμα καταγραφής

Βήμα 2) Προσθέστε την παρακάτω γραμμή κώδικα στο global.asax.cs. Θα ελέγξει για σφάλματα και θα εμφανίσει τη σελίδα ErrorPage.html ανάλογα. Επίσης, ταυτόχρονα, θα καταγράψουμε τις λεπτομέρειες του σφάλματος σε ένα αρχείο που ονομάζεται "AllErrors.txt". Για το παράδειγμά μας, θα γράψουμε κώδικα για να δημιουργηθεί αυτό το αρχείο στη μονάδα δίσκου D.

ASP.NET Σφάλμα καταγραφής

namespace DemoApplication
{  

  public partial class Demo : System.Web.UI.Page  
		{  
		  protected void Application_Error(object sender, EventArgs e)  
		  {
		   Exception exc = Server.GetLastError();
		   String str ="";
		   str = exc.Message;
		   
		   String path = @"D:\AllErrors.txt";
		  File.WriteAllTest(path,str);
		  Server.trrasfer("~/ErrorPage.html");
		  }
		}
}

Επεξήγηση κώδικα: -

  1. Η πρώτη γραμμή είναι να λάβετε το ίδιο το σφάλμα χρησιμοποιώντας τη μέθοδο 'Server.GetLastError'. Αυτό στη συνέχεια εκχωρείται στη μεταβλητή 'exc'.
  2. Στη συνέχεια δημιουργούμε μια κενή μεταβλητή συμβολοσειράς που ονομάζεται 'str'. Λαμβάνουμε το πραγματικό μήνυμα σφάλματος χρησιμοποιώντας την ιδιότητα "exc.Message". Η ιδιότητα exc.Message θα έχει το ακριβές μήνυμα για οποιοδήποτε σφάλμα παρουσιαστεί κατά την εκτέλεση της εφαρμογής. Στη συνέχεια, αυτό εκχωρείται στη μεταβλητή συμβολοσειράς.
  3. Στη συνέχεια, ορίζουμε το αρχείο που ονομάζεται "AllErrrors.txt". Εδώ θα σταλούν όλα τα μηνύματα σφάλματος. Γράφουμε τη συμβολοσειρά 'str' που περιέχει όλα τα μηνύματα σφάλματος σε αυτό το αρχείο.
  4. Τέλος, μεταφέρουμε τον χρήστη στο αρχείο ErrorPage.html.

Παραγωγή:-

Περιηγηθείτε στη σελίδα http://localhost:53003/Demo1.aspx . Να θυμάστε ότι το Demo1.aspx δεν υπάρχει στην εφαρμογή μας. Στη συνέχεια θα λάβετε την παρακάτω έξοδο.

ASP.NET Σφάλμα καταγραφής

Και ταυτόχρονα, αν ανοίξετε το αρχείο 'AllErrors.txt' θα δείτε τις παρακάτω πληροφορίες.

ASP.NET Σφάλμα καταγραφής

Το μήνυμα σφάλματος μπορεί στη συνέχεια να μεταβιβαστεί στον προγραμματιστή σε μεταγενέστερο χρονικό σημείο για σκοπούς εντοπισμού σφαλμάτων.

Σύνοψη

  • Το ASP.Net έχει τη δυνατότητα να εκτελεί εντοπισμό σφαλμάτων και χειρισμό σφαλμάτων.
  • Ο εντοπισμός σφαλμάτων μπορεί να επιτευχθεί με την προσθήκη σημείων διακοπής στον κώδικα. Στη συνέχεια, το ένα εκτελεί την επιλογή Έναρξη με εντοπισμό σφαλμάτων στο Visual Studio για να διορθώσει τον κώδικα.
  • Η ανίχνευση είναι η δυνατότητα παροχής περισσότερων πληροφοριών κατά την εκτέλεση της εφαρμογής. Αυτό μπορεί να γίνει σε επίπεδο εφαρμογής ή σελίδας.
  • Σε επίπεδο σελίδας, ο κωδικός Trace=true πρέπει να προστεθεί στην οδηγία σελίδας.
  • Σε επίπεδο εφαρμογής, δημιουργείται μια επιπλέον σελίδα που ονομάζεται Trace.axd για την εφαρμογή. Αυτό παρέχει όλες τις απαραίτητες πληροφορίες ανίχνευσης.