Bookmarks

Yahoo Gmail Google Facebook Delicious Twitter Reddit Stumpleupon Myspace Digg

Search queries

docmd.close 2585, WWWXXXAPC, WWWXXXDOCO, nu vot, dhcpd lease file "binding state", WWWXXXDOCO, how to setup procmail to process html2text, how to setup procmail html2text, WWWXXXAPC., XXXCNZZZ

Links

XODOX
Impressum

#1: Exception Handling Problem

Posted on 2008-04-23 00:37:53 by Stephen Noronha

Hi,

I am a lil confused about exception handling. I have a main app and i am
importing 2 DLL's. one of the DLL's is for connection/datasets etc and the
other has logging errors to file.Both DLL's have try{} catch(exception
ex){throw ex; } and i am force feeding errors so that I can catch the
exceptions.
I have done this:

1. for DLL1 (Logging Errors), I am force feeding (5/0) and it throws
"Attempted to divide by zero." exception and its propagating to the parent
2. for DLL 2 (connnection/datasets), I am writing a non-existing STP and it
thows "System.Data.SqlClient.SqlException Message: Could not find stored
procedure 'stp_XXXX'. exception and its propagating to the parent
3. the same DLL (DLL 2), I am passing a non-existent DB and it throws
"System.NullReferenceException Message: Object reference not set to an
instance of an object." exception and its propagating to the parent I want a
proper error message "DB does not exist or something" but it does not.

I have debugged the application and i observe that in the catch of DLL2, it
does show me propermessage but when it propagates to the parent the message
is lost. Can someone please explain what I am doing wrong?

Thanks for your help,
Stephen

Report this message

#2: Re: Exception Handling Problem

Posted on 2008-04-23 21:31:26 by Teemu Keiski

Hi,

throw ex;

loses information about the stack.

http://aspadvice.com/blogs/joteke/archive/2004/04/15/2277.as px

You'd better just use throw; / inner exception or follow the instructions on
the sfollowing post

http://weblogs.asp.net/fmarguerie/archive/2008/01/02/rethrow ing-exceptions-and-preserving-the-full-call-stack-trace.aspx

What comes to your case, it would help to see some of the error handling
logic. Basically, you might need to throw a custom exception on that case or
somehow create defensive code . Seems as if passing non-existent db causes
exception on some other object, maybe you shoukd catch
NullReferenceException and pass it up as "DB does not exist" (the best guess
I can make here)

--
Teemu Keiski
AspInsider, ASP.NET MVP
http://blogs.aspadvice.com/joteke
http://teemukeiski.net



"stephen" <stephen_jn@hotmail.com> wrote in message
news:ecx%23BmMpIHA.1952@TK2MSFTNGP05.phx.gbl...
>
> Hi,
>
> I am a lil confused about exception handling. I have a main app and i am
> importing 2 DLL's. one of the DLL's is for connection/datasets etc and the
> other has logging errors to file.Both DLL's have try{} catch(exception
> ex){throw ex; } and i am force feeding errors so that I can catch the
> exceptions.
> I have done this:
>
> 1. for DLL1 (Logging Errors), I am force feeding (5/0) and it throws
> "Attempted to divide by zero." exception and its propagating to the parent
> 2. for DLL 2 (connnection/datasets), I am writing a non-existing STP and
> it thows "System.Data.SqlClient.SqlException Message: Could not find
> stored procedure 'stp_XXXX'. exception and its propagating to the parent
> 3. the same DLL (DLL 2), I am passing a non-existent DB and it throws
> "System.NullReferenceException Message: Object reference not set to an
> instance of an object." exception and its propagating to the parent I want
> a proper error message "DB does not exist or something" but it does not.
>
> I have debugged the application and i observe that in the catch of DLL2,
> it does show me propermessage but when it propagates to the parent the
> message is lost. Can someone please explain what I am doing wrong?
>
> Thanks for your help,
> Stephen
>

Report this message