2.2.2.7 System.Exception

System.Exception is a Class. The Library name of the Class is "mscorlib". This is the Base Class for all Exception Classes.

 namespace System
 {
   class Exception
   {
     String    ClassName;
     String    Message;
     System.Exception InnerException;
     String    HelpUrl;
     String    StackTraceString;
     String    RemoteStackTraceString;
     Int32     RemoteStackIndex;
     String    ExceptionMethod;
     Int32     HResult;
     String    Source;
     System.Object  Data;   
  
   }
 }
  

ClassName: The TypeName of the Exception Class. If the instance is a Derived Class of this Class then this field MUST contain the TypeName of the most Derived Class.

Message: A String value that represents a human-readable text that describes the Exception. The string MAY be localized.<17>

InnerException: An instance assignable to System.Exception that is wrapped by this Exception. If this Exception does not wrap any other Exception, then the value of this field MUST be NullObject.

HelpUrl: Link to a page that contains additional information about the Exception. This field is optional and its value MAY be NullObject.

RemoteStackTraceString: String representation of the call stack when the Exception was thrown on the server side. If the Exception was thrown across multiple remoting boundaries, then this field SHOULD contain a concatenation of the stack traces of all the remoting servers. The stack traces MUST be ordered from the ultimate Remoting Server to the first Remoting Server that was called by the client.

RemoteStackIndex: An int representing the number of Remoting boundaries that the Exception has propagated beyond the first one. This value MUST be zero for a simple client server scenario.

ExceptionMethod: A string value that provides information about the method that throws the Exception.

HResult: An Int32 value that specifies the numerical error code.

Source: A string value that is set by the code that throws the Exception. This MAY be any string.

Data: An instance of any Data Value that provides additional information about the Exception. The semantics of the value are not part of this protocol.<18>