login  Naam:   Wachtwoord: 
Registreer je!
 Forum

Rethrow exception

Offline Drieske - 12/01/2010 09:22 (laatste wijziging 12/01/2010 09:48)
Avatar van DrieskeLid Ik ben momenteel aan het experimenteren met c# en ze spreken over het rethrowen van een exception. Nu kan ik hier geen goed voorbeeld van vinden en kan ik me ook niet echt goed voorstellen waarvoor het dient.

Het rethrowen van een exception gebeurd als volgt:

  1. catch (OverflowException e)
  2. {
  3. throw;
  4. }


Nu is de vraag wat dit juist doet; want op welke manier ik het ook gebruik, ik blijf fouten krijgen. Iemand die mij hierbij kan helpen?

2 antwoorden

Gesponsorde links
Offline MiST - 12/01/2010 11:39
Avatar van MiST Lid ik denk wel dat je "throw e" moet gooien.

Je vangt namelijk een exception op in de variabele e, en je wil die rethrowen.

Het nut hiervan is als je wel een exception moet opvangen, maar er nog niet mee wil afhandelen. dan kan je dat overlaten aan een hogere methode.

Snappie?
Offline Abbas - 12/01/2010 15:52 (laatste wijziging 12/01/2010 15:52)
Avatar van Abbas Gouden medaille

Crew .NET
Sommige mensen, waaronder ik ook, deden het re-throwen van een Exception op volgende manier om de volledige StackTrace te kunnen bijhouden:

  1. try
  2. {
  3. //iets dat mogelijk exceptions geeft
  4. }
  5. catch ( Exception e )
  6. {
  7. // Messagebox.Show(e.Message);
  8. throw new Exception(String.Empty, e);
  9. }

Blijkbaar, en dat wist ik zelf ook niet, heeft C# hier een heel eenvoudige syntax voor om de Exception te re-throwen.

  1. catch ( Exception e )
  2. {
  3. //Vb: MessageBox.Show(e.Message);
  4. throw;
  5. }


Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.192s