| 

.NET C# Java Javascript Exception

1
Ich bekomme ein Warning vom Compiler, weil ich in einem Catch-Statement den Parameter nicht verwende.
try
{
irgendwas();
}
catch (Exception ex)
{
Beende();
}


Angemeckert wird ex, weil ich den in dem Catch nicht brauche. Wie kann ich das Warning abschalten?
10.02.2011
Doodlebug 11 2
5 Antworten
3
Erstmal kannst du den Variablennamen ex komplett weg lassen. Also quasi so:
try
{
irgendwas();
}
catch (Exception)
{
Beende();
}

Andererseits könntest du mittels
#pragma warning disable 1234, 5678

die Warnungen ignorieren. Die Zahlen sind die "Warning Numbers"

Oder du kannst einen kompletten Block von Code mittels
#pragma warning disable
// dein Code
#pragma warning restore

komplett ignorieren lassen.
10.02.2011
Logdog82 856 2 8
1
Als Hinweis: Man sollte mit #pragma vorsichtig umgehen, vergisst man nämlich das #pragma wiederherzustellen, gilt das für die restliche Datei.
Konstantin 10.02.2011
1
Alle Varianten sind sehr unschön. Meiner Meinung nach sollte, wenn eine Exception wie oben gezeigt, unbehandelt ist, gar nicht erst gefeuert werden. Das heißt, dass diese Exception schon in der "irgendwas"-Methode behandelt /verhindert werden sollte.
10.02.2011
phlow666 922 1 9
Genau so sehe ich das auch +1
Mario Priebe 10.02.2011
1
Und wenn die irgendwas Methode zur Business oder Data Layer gehört? Dann muss sie an das UI weitergereicht werden. Aber besonders da sollte man auch nicht mit einem generellem catch arbeiten.
Maria Simlinger 10.02.2011
1
Fehlerhafte Antwort bitte löschen
10.02.2011
Mario Priebe 6,0k 3 9
0
try {

} catch {

}

also die Klammer beim Catch einfach weglassen!
10.02.2011
edures 129 5
Ist aber ein Unterschied: Mit catch (exception) { } bezieht sich das catch ausschließlich auf .NET Exceptions. C# übersetzt ein leeres catch in catch (System.Object).
Maria Simlinger 10.02.2011
0
Die Klammer nach dem catch würde ich nicht empfehlen, wegzulassen. Man sollte beim catchen generell versuchen, den Typen so genau wie möglich anzugeben. Sonst läuft man Gefahr, dass man diese Blöcke zu nachlässig behandelt.
10.02.2011
Andy Stumpp 509 1 6

Stelle deine .net-Frage jetzt!
TOP TECHNOLOGIES CONSULTING GmbH