亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > C# > 正文

解析c#在未出現異常情況下查看當前調用堆棧的解決方法

2020-01-24 03:18:48
字體:
來源:轉載
供稿:網友
C#查看堆棧通常是在異常處理中,出現異常之后通過異常的堆棧可以很方便的得到出現這個錯誤的代碼調用路徑。這個很有用,是否可以在沒有異常出現時使用這種方法排查一些非異常錯誤呢?答案是肯定的。
起因:
論壇發帖子有幾個途徑,有可能是新聞系統直接導入的帖子,也有可能是抓取的帖子,還有可能是用戶通過正常途徑發表。但是這兩天出了一個問題,有些帖子的HasImage屬性不對。通過幾種方法做調試都不能重現問題,沒有辦法,只有在程序中添加回復的地方添加日志程序來記錄堆棧,從而追蹤到是哪個途徑發帖出現了問題。
代碼:
復制代碼 代碼如下:

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

    void postProvider_Added(Model.PostInfo post)
    {
        try
        {
            StackFrame[] stacks = new StackTrace().GetFrames();
            if (post.Content.IndexOf("IMG") > -1 && post.HasImage == false)
            {
                StringBuilder sb = new StringBuilder();
                sb.AppendLine("問題出現");
                sb.AppendLine("stack is:");
                sb.Append(ToString(stacks));

                sb.Append("content=");
                sb.AppendLine(post.Content);

                sb.Append("HasImage=");
                sb.AppendLine(UserPostContentProcessor.HasImage(post.Content).ToString());

                sb.Append("createUserID=");
                sb.AppendLine(post.CreateUserID.ToString());
                sb.AppendLine(string.Format("LoginUser={0},Level={1}",PageBase.GetLoginUser().ID,PageBase.GetLoginUser().LevelNo));

                TextLogWriter.NamedInstance("http://log//HasImageErrorCheckerPostExtension//").Write(sb.ToString());
            }
        }
        catch (Exception ex)
        { 
            TextLogWriter.NamedInstance("http://log//HasImageErrorCheckerPostExtension//").Write(ex);
        }
    }

    private string ToString(StackFrame[] stacks)
    {
        string result = string.Empty;
        foreach (StackFrame stack in stacks)
        {
            result += string.Format("{0} {1} {2} {3}/r/n", stack.GetFileName(),
                stack.GetFileLineNumber(),
                stack.GetFileColumnNumber(),
                stack.GetMethod().ToString());
        }
        return result;
    }
}

上面類HasImageErrorCheckerPostExtension繼承自IPostProviderExtension并且有PostProviderExtension屬性修飾,系統會自動調用它并在發帖時觸發這里綁定的事件。這里的核心代碼是new StackTrace().GetFrames()通過這個方法可以得到當前程序執行時的堆棧信息。在Release模式下可以得到調用的方法名,在Debug模式下可以得到具體的文件行號,列號。
這個方法是調試中不能重現問題時的一種查找問題的選擇方案。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
久久久精品一区二区三区| 日韩亚洲欧美中文高清在线| 97色在线观看| 日韩亚洲欧美中文高清在线| 亚洲人成电影在线观看天堂色| 国产成人精彩在线视频九色| www.欧美精品一二三区| 国产欧美精品一区二区三区介绍| 91青草视频久久| 欧美黑人性生活视频| 精品久久久久久久久久久久久| 日韩在线免费高清视频| 91免费视频网站| 亚洲精品自拍第一页| 在线精品国产成人综合| 米奇精品一区二区三区在线观看| 国产精品视频yy9099| 伊人久久久久久久久久久| 国产999精品久久久| 欧美激情在线观看| 国产一区二区在线免费| 欧美野外猛男的大粗鳮| 精品丝袜一区二区三区| 国产+成+人+亚洲欧洲| 久久精品中文字幕| 热99精品只有里视频精品| 国产精品高清网站| 91a在线视频| 精品高清美女精品国产区| 国产精品激情av电影在线观看| 日韩av一区在线观看| 色琪琪综合男人的天堂aⅴ视频| 国产精品白嫩初高中害羞小美女| 一区二区三区在线播放欧美| 欧美自拍大量在线观看| 亚洲日韩中文字幕在线播放| 国产精品美女久久久久av超清| 97久久精品人人澡人人爽缅北| 亚洲片av在线| 中文字幕国产精品久久| 亚洲自拍av在线| 欧美激情视频免费观看| 亚洲综合大片69999| 国产精品极品尤物在线观看| 国产精品高清在线观看| 91av在线不卡| 久久色在线播放| 亚洲激情视频在线观看| 亚洲精品大尺度| 欧美一级大胆视频| 成人福利网站在线观看11| 亚洲女人天堂成人av在线| 精品国产区一区二区三区在线观看| 国产午夜精品美女视频明星a级| 日韩欧美国产黄色| 欧美国产亚洲精品久久久8v| 精品自拍视频在线观看| 日本高清久久天堂| 欧美猛男性生活免费| 国产精品视频yy9099| 社区色欧美激情 | 国产免费成人av| 亚洲精品成人久久久| 国产成人一区二区三区小说| 久久99国产精品久久久久久久久| 成人欧美一区二区三区在线湿哒哒| 韩国精品美女www爽爽爽视频| 欧美日韩视频免费播放| 欧美日韩一区二区免费视频| 亚洲欧美自拍一区| 91精品国产综合久久香蕉922| 亚洲综合国产精品| 日韩高清免费在线| 久久精品中文字幕免费mv| 国产精品久久久久久久app| 国产视频在线一区二区| 国产欧美一区二区三区久久人妖| 国产va免费精品高清在线观看| 亚洲精品国产精品国自产观看浪潮| 亚洲精品一区二三区不卡| 亚洲成人a**站| 国产91九色视频| 色综合老司机第九色激情| 亚洲视频在线观看网站| 久久国产精品久久精品| 视频在线观看99| 久久久久久国产精品三级玉女聊斋| 亚洲天堂av电影| 欧美性猛交xxxx乱大交| 一区二区欧美日韩视频| 欧美激情视频网址| 国产成人久久精品| 亚洲第一视频网站| 中文字幕精品www乱入免费视频| 久久综合国产精品台湾中文娱乐网| 欧洲午夜精品久久久| 亚洲欧美日韩精品久久亚洲区| 亚洲韩国青草视频| 在线精品视频视频中文字幕| 在线电影中文日韩| 久久久亚洲欧洲日产国码aⅴ| 欧洲日韩成人av| 中日韩美女免费视频网址在线观看| 国产专区精品视频| 欧美日韩国产在线看| 精品中文字幕视频| 国产精品精品久久久| 久久影院资源网| 成人97在线观看视频| 久久97久久97精品免视看| 国产自摸综合网| 久久999免费视频| 亚洲高清福利视频| 亚洲色图偷窥自拍| 欧美专区中文字幕| 欧美午夜精品久久久久久浪潮| 一级做a爰片久久毛片美女图片| 神马久久久久久| 亚洲一区二区三区视频播放| 在线精品国产成人综合| 亚洲欧美另类中文字幕| 欧美在线精品免播放器视频| 91久久精品美女高潮| 国产精品影院在线观看| 欧美成人合集magnet| 国产成人免费av电影| 欧美一级黑人aaaaaaa做受| www.久久草.com| 欧美成年人在线观看| 性色av一区二区三区在线观看| 欧美一级视频在线观看| 97精品国产97久久久久久免费| 91亚洲精品久久久久久久久久久久| 国产精品国模在线| 尤物精品国产第一福利三区| 国产精品 欧美在线| 日韩亚洲综合在线| 欧美日韩国产一区中文午夜| 亚洲高清免费观看高清完整版| 日本欧美一级片| 亚洲国产精彩中文乱码av在线播放| 国产在线观看不卡| 欧美日韩国产色视频| 精品日韩美女的视频高清| 海角国产乱辈乱精品视频| 狠狠综合久久av一区二区小说| 欧美一级高清免费播放| 国产91精品久久久久久| 亚洲一区二区三区毛片| 永久免费毛片在线播放不卡| 国产成人精品日本亚洲专区61| 91禁外国网站| 91在线网站视频| 久久男人的天堂| 日韩福利视频在线观看| 日韩在线视频观看| 欧美性videos高清精品| 91中文在线观看| 91美女片黄在线观看游戏| 日韩激情av在线免费观看| 亚洲国产成人91精品| 久久99热精品这里久久精品| 亚洲福利小视频| 日韩av免费在线|