A stack frame is an abstraction of
the current state of an
executing method. Use StackTrace to enumerate all
the stack frames that led up to the current process. Use
GetMethod( ) to obtain information about the
method represented by a stack frame. Use GetFileName(
) to retrieve the name of the module that contains the
method. The column and line numbers of the method, which are
determined from debugging symbols, can be accessed with
GetFileColumnNumber( ) and
GetFileLineNumber( ). To obtain the location in
memory of the StackFrame, use
GetNativeOffset( ), or, alternatively, for the
offset of IL code, call GetILOffset( ). If the JIT
compiler is not generating debugging symbols, this number is
approximated by the runtime.
public class StackFrame {
// Public Constructors
public StackFrame( );
public StackFrame(bool fNeedFileInfo);
public StackFrame(int skipFrames);
public StackFrame(int skipFrames, bool fNeedFileInfo);
public StackFrame(string fileName, int lineNumber);
public StackFrame(string fileName, int lineNumber, int colNumber);
// Public Static Fields
public const int OFFSET_UNKNOWN;
// = -1
// Public Instance Methods
public virtual int GetFileColumnNumber( );
public virtual int GetFileLineNumber( );
public virtual string GetFileName( );
public virtual int GetILOffset( );
public virtual MethodBase GetMethod( );
public virtual int GetNativeOffset( );
public override string ToString( );
// overrides object
}