private static void PopulateStackTrace(this Error error, Error root, Exception exception)
        {
            StackFrame[] frames = null;
            try {
                var st = new StackTrace(exception, true);
                frames = st.GetFrames();
            } catch {}

            if (frames == null)
            {
                return;
            }

            foreach (StackFrame frame in frames)
            {
                var stackFrame = new Exceptionless.Models.Data.StackFrame {
                    LineNumber = frame.GetFileLineNumber(),
                    Column     = frame.GetFileColumnNumber(),
                    FileName   = frame.GetFileName()
                };

                stackFrame.Data["ILOffset"]     = frame.GetILOffset();
                stackFrame.Data["NativeOffset"] = frame.GetNativeOffset();

                stackFrame.PopulateMethod(root, frame.GetMethod());

                error.StackTrace.Add(stackFrame);
            }
        }
        private static void PopulateStackTrace(this Error error, Error root, Exception exception) {
            StackFrame[] frames = null;
            try {
                var st = new StackTrace(exception, true);
                frames = st.GetFrames();
            } catch {}

            if (frames == null)
                return;

            foreach (StackFrame frame in frames) {
                var stackFrame = new Exceptionless.Models.Data.StackFrame {
                    LineNumber = frame.GetFileLineNumber(),
                    Column = frame.GetFileColumnNumber(),
                    FileName = frame.GetFileName()
                };

                stackFrame.Data["ILOffset"] = frame.GetILOffset();
                stackFrame.Data["NativeOffset"] = frame.GetNativeOffset();

                stackFrame.PopulateMethod(root, frame.GetMethod());

                error.StackTrace.Add(stackFrame);
            }
        }