Email Article To a Friend View Printable Version

Keeping Exception.StackTrace Intact when Rethrowing an Exception

.NET Programming

Nick Weinholt (.Net Performance guru and MVP) has an article on the correct method for rethrowing an exception in C# so that the Exception.StackTrace actually points to the root problem.

In C# the correct method for rethowing an exception is using throw; without any arguments within the catch block:

try {
// code
}
catch (Exception ex) {
throw; // Rethrow exception without resetting StackTrace
}

In VB.Net the method is the same:

Try
' code

Catch ex As Exception
Throw ' Rethrow exception without resetting StackTrace

End Try

Using this method the stack trace will go all the way down to the original exception, and not just to your catch block.



Share
  • Facebook
  • Google Bookmarks
  • Ask
  • LinkedIn
  • Socialogs
  • Wikio
  • Digg
  • Twitter
  • SlashDot
  • Reddit
  • MySpace
  • Del.icio.us
  • Blogter
  • BlogMemes
  • Yahoo Buzz





Gold Coast Aquarium Maintenance | Gold Coast Marine Fish | Gold Coast Tropical Fish
Jewel Jones - Counselling Service - Penrith, Richmond
 
     
 Copyright © 2010 Julian Kuiters
 All trademarks and copyrights on this page are owned by their respective owners.