Ausnahmebehandlung in MVC [Top 2 Methoden zur Behandlung von Ausnahmen]
Veröffentlicht: 2020-12-29Die Ausnahmebehandlung in MVC wird hauptsächlich beim Erstellen von Branchenanwendungen verwendet, die bestimmte Spezifikationen und Bedingungen erfordern und einzigartige Anforderungen haben.
Lassen Sie uns verstehen, was die Ausnahmebehandlung im Detail ist und wie sie Ihnen bei Ihren Anwendungen hilft.
Inhaltsverzeichnis
Was ist Ausnahmebehandlung?
Es ist der Prozess des Umgangs und Reagierens auf außergewöhnliche Bedingungen, die auftreten und spezifische Methoden erfordern; Dies muss in Geschäftsanwendungen integriert werden, um das Ergebnis zu verbessern und sicherzustellen, dass alle Anforderungen ordnungsgemäß gehandhabt werden.
Es gibt zwei wesentliche Möglichkeiten, wie diese Ausnahmen behandelt werden
- Die Catch-and-Block-Methode
- Die Methode zur Behandlung von Anwendungsfehlern.
Dies sind jedoch nicht die einzigen Methoden, die für den Prozess verwendet werden.
Hier werden wir die verschiedenen Schritte und Techniken besprechen, die Sie verwenden können, um Ausnahmen in MVC zu verwalten.
Die Try-Catch-Behandlungsmethode
Die Catch-and-Block-Methode gilt als die herkömmliche Methode, die für die Ausnahmebehandlung in MVC- basierten Anwendungen verwendet wird. Mit dieser Methode protokollieren Sie die Fehlerinformationen.

Versuchen
{ Ausnahme hinzufügen;}
catch (Ausnahmename)
{
Ansicht zurückgeben („Fehler“);
}
Sie geben die Ausnahmebedingung im try-Blog ein und fügen den Ausnahmenamen für den catch-Block hinzu. Wenn die Ausnahme im Catch-Block abgefangen wird, gibt sie den erwähnten Fehler zurück.
Dies kann auch verwendet werden, um alle Fehler innerhalb der Anwendung zu behandeln und zu protokollieren.
OnException-Methode
Mit dieser Methode können Sie die OnException-Methode innerhalb der Controller-Klasse überschreiben. Der Fehlercode 500 wird verwendet, um alle protokollierten Fehler zu behandeln, die sich aus der Ausnahmebehandlung in MVC ergeben .
Grundsätzlich können Sie die Ansicht der Ausnahme mit dieser Methode ohne die Try-Schleife protokollieren und angeben. Sie müssen die <customErrors>-Konfiguration in der web.config nicht aktivieren, um mit dieser Methode zu beginnen.
öffentliche Klasse HomeController: Controller
{
öffentliches Aktionsergebnis Kontakt()
{
Zeichenfolge msg = null;
ViewBag.Message = msg.Length;
Rückgabeansicht ();
}
protected override void OnException(ExceptionContext filterContext)
{
filterContext.ExceptionHandled = true;
//Fehler protokollieren!!
//Zur Aktion umleiten
filterContext.Result = RedirectToAction("Error", "InternalError");
// ODER bestimmte Ansicht zurückgeben
filterContext.Result = neues ViewResult
{
ViewName = „~/Views/Error/InternalError.cshtml“
};
}
}
Sehen Sie sich den obigen Code an, und Sie werden feststellen, dass OnException eine void-Methode ist und das Objekt ExceptionContext als Argument verwendet.
Dieses Argument enthält alle Informationen, die zum Protokollieren des Fehlers erforderlich sind. Wenn Sie ExceptionHandled=true festlegen, können Sie die von einem bestimmten Controller generierten Aktionen problemlos protokollieren.
HandleError-Attribut
Dies ist eine weitere beliebte Methode zum Behandeln der Ausnahme und zum Verwalten von Fehlern innerhalb der MVC Ihrer Anwendung. Wenn Sie Fehler bemerken, die von einer Aktionsmethode oder einem Controller verursacht wurden, sollten Sie diese Methode verwenden.
Mit diesem Attribut können Sie auswählen, dass eine benutzerdefinierte Ansicht für die jeweilige Ausnahme angezeigt wird. Dies kann entweder in der Aktionsmethode oder im Controller erfolgen.
Diese Methode wird wiederum auch verwendet, wenn Sie Fehler mit Code 500 verwalten. Sie können mit dieser Methode keine Ausnahmen protokollieren.
Es gibt eine bestimmte Möglichkeit, dieses Attribut hinzuzufügen, damit es auf Ihren Wunsch hin funktioniert. Sie sollten den HandleError-Attributfilter innerhalb der FilterConfig.RegisterGlobalFilters()-Methode hinzufügen.
Außerdem sollten Sie sicherstellen, dass der benutzerdefinierte Fehlermodus <CustomErrors mode = „on“> in der web.config immer aktiviert ist. An dieser Stelle können Sie das Attribut zum aktiven Modus hinzufügen.

öffentliche Klasse HomeController: Controller
{
[HandleError]
öffentliches Aktionsergebnis Kontakt()
{
Zeichenfolge msg = null;
ViewBag.Message = msg.Length;
Rückgabeansicht ();
}
}
Der gerade erwähnte Code funktioniert am besten für die Anforderungen an Kontext und Ausnahmebehandlung.
Hier wird das Attribut für die Aktionsmethode Contact() konfiguriert. Wenn der Prozess kompiliert ist, wird die Datei „Error.cshtml“ im Ansichtsmodus angezeigt.
Dies geschieht nur, wenn eine Ausnahme auftritt. Dies ist in allen Ausnahmefällen die Standardansicht. Sie können dieses Attribut auch verwenden, um die verschiedenen Seiten zu konfigurieren, um die verschiedenen Arten von Ausnahmen zu verwalten.
Während dieses Attribut perfekt für die Fehlerbehandlung funktioniert und alle Arten von Konfigurationen verwaltet, funktioniert es möglicherweise nicht überall. Wählen Sie es für einige Fälle, in denen Sie glauben, dass es Ihrer Anwendung hilft.
Die Methode unterstützt die Protokollierungsausnahmen nicht. Es verwaltet nur HTTP-Ausnahmen innerhalb des Codes 500 zu erfassen. Ausnahmen von anderen Controllern können nicht erfasst werden. Es ist also kein Attribut, das Sie für alle Gelegenheiten und Bedürfnisse berücksichtigen können.
Erben von HandleError
Sie können diese Methode sogar verwenden, um Ausnahmen zu behandeln. Die oben besprochene Methode erlaubt es Ihnen nicht, die Komponenten wiederzuverwenden, was als Nachteil angesehen werden kann.
Sie können nicht funktionieren, wenn Sie für alle Ausnahmen, die protokolliert werden müssen, weiter codieren müssen.
Daher müssen Sie diese Erweiterung verwenden. Es ermöglicht Ihnen, vom HandleError-Attribut zu erben und es über den spezifischen Controller hinweg zu verwenden. Dadurch können Sie Ausnahmen behandeln, ohne zu oft codieren zu müssen.
Lesen Sie auch: Interviewfragen zur Behandlung von Ausnahmen
Application_Error-Ereignis
Application_Error Event ist noch eine weitere Methode zur Behandlung des Anwendungsfehlers und zur Verwaltung der Ausnahmen. Dieser Teil erfordert, dass Sie das Ereignis Application_Error in der Datei global.asax steuern.
Sie können dieses Ereignis für alle Arten von Fehlercodes und Ausnahmebehandlung in MVC auslösen , was die Verwendung vereinfacht und eine der besten Methoden zur Behandlung von Ausnahmen darstellt.
Dabei wird die primäre Fehlerprotokollierungsmethode verwendet, mit der alle Ausnahmen verwaltet werden können, die nicht innerhalb der Anwendung behandelt werden.
Verwalten von HTTP-Fehlern
Die hier erwähnte Methode kann keine der HTTP-Ausnahmen verarbeiten. Wir sprechen von Ausnahmen wie „Datei nicht gefunden“ und anderen häufigen Fehlermeldungen, die Sie mit Sicherheit erhalten werden.
Sie müssen die Fehlerdetails und den Fehlercode in die Syntax eingeben, um diese Ausnahmen zu verwalten.
Sie müssen alle möglichen Fehlercodes und Meldungen notieren, die Sie wahrscheinlich als Teil der Anwendung erhalten, bevor Sie die Syntax freigeben.
Um Ihr Wissen über branchenspezifische Anwendungen zu erweitern und Kenntnisse in Programmiersprachen zu erlangen, treten Sie upGrad bei .
Mit einer Reihe von Studiengängen und einer Reihe von Karriereoptionen erweitern Sie Ihre Karrierechancen.
Setzen Sie sich mit unseren Experten in Verbindung oder vereinbaren Sie einen Anruf mit uns, um mehr über die für Sie personalisierten Optionen zu erfahren.
Melden Sie sich für Software Engineering-Kurse an den besten Universitäten der Welt an. Verdienen Sie Executive PG-Programme, Advanced Certificate-Programme oder Master-Programme, um Ihre Karriere zu beschleunigen.

Fazit
Beim Umgang mit der Ausnahmebehandlung in MVC müssen Sie sicherstellen, dass die Methode, für die Sie sich entscheiden, es Ihnen ermöglicht, alle möglichen Fehler aufzuzeichnen. Sie sollten in der Lage sein, die Komponenten wiederzuverwenden und alle Anwendungsfehler zu verwalten. Erfahren Sie mehr über die Ausnahmebehandlung in Java.
Wenn Sie möchten, dass eine einzige Methode alle möglichen Ausnahmen behandelt, sollten Sie sich für die Methode Global Application_Error entscheiden . Es stellt sicher, dass alle Fehler zusammen mit den <CustomErrors> protokolliert werden, und stellt sicher, dass sie in der Web.Config aufgezeichnet werden.
Bei dieser Methode wird der Benutzer auf bestimmte Seiten umgeleitet, wenn er auf den Fehler stößt. Die Ausnahmebehandlung ist eines der Kernkonzepte der Anwendungsentwicklung mit ASP.Net MVC.
Wir hoffen, dass dieser Artikel aufschlussreich war, um mehr über die Ausnahmebehandlung in MVC zu erfahren. Bitte erkunden Sie unsere Blogs, um mehr über verschiedene Anwendungen zu erfahren.
Wenn Sie mehr über Full-Stack-Entwicklung erfahren möchten, schauen Sie sich das Executive PG-Programm in Full-Stack-Softwareentwicklung von upGrad & IIIT-B an, das für Berufstätige konzipiert ist und mehr als 500 Stunden strenge Schulungen, mehr als 9 Projekte und mehr bietet Aufgaben, IIIT-B-Alumni-Status, praktische praktische Schlusssteinprojekte und Arbeitsunterstützung bei Top-Unternehmen.
