SoFunction
Updated on 2025-03-01

Solution to parse c# to view the current call stack without exception


[PostProviderExtension]
public class HasImageErrorCheckerPostExtension : IPostProviderExtension
{
    public void BindEvents(PostProviderBase postProvider)
    {
        += new PostChanged(postProvider_Added);
    }

    void postProvider_Added( post)
    {
        try
        {
            StackFrame[] stacks = new StackTrace().GetFrames();
            if (("IMG") > -1 && == false)
            {
                StringBuilder sb = new StringBuilder();
("Problem arises");
                ("stack is:");
                (ToString(stacks));

                ("content=");
                ();

                ("HasImage=");
                (().ToString());

                ("createUserID=");
                (());
                (("LoginUser={0},Level={1}",().ID,().LevelNo));

                ("\\log\\HasImageErrorCheckerPostExtension\\").Write(());
            }
        }
        catch (Exception ex)
        { 
            ("\\log\\HasImageErrorCheckerPostExtension\\").Write(ex);
        }
    }

    private string ToString(StackFrame[] stacks)
    {
        string result = ;
        foreach (StackFrame stack in stacks)
        {
            result += ("{0} {1} {2} {3}\r\n", (),
                (),
                (),
                ().ToString());
        }
        return result;
    }
}