国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > C# > 正文

C#探秘系列(三)――StackTrace,Trim

2020-01-24 02:40:41
字體:
來源:轉載
供稿:網友

一: Environment.StackTrace

   可能我們看到最多的就是catch中的e參數,里面會有一個StackTrace,然后不可否認的這玩意太有用了,它會把調用堆棧中的信息輸出出來,有了它,我們就可以快速的知道運行代碼的執行流并且快速的定位到問題。

       有時候我們會遇到這樣兩個問題:

①:線上的bug在本地不能重現。

②:由于太多的多態,設計模式,程序員反而對線上的代碼執行流向會搞的稀里糊涂的。

     為了搞清楚并解決這兩個問題,我們看生產日志的時候很在乎代碼的執行流以及想獲取當前上下文的可疑變量值。獲取可疑的變量值,這個好說,我們通過記錄一些變量值到log就可以了,但是怎么記錄下當前語句的調用堆棧信息呢?這篇就是我要介紹的一個屬性,很簡單,  答案也就在標題上,下面我們看看代碼。

復制代碼 代碼如下:

class Program
    {
        static void Main(string[] args)
        {
            Person person = new Person();

            person.Fly();

            Console.Read();
        }
    }

    class Person
    {
        public void Fly()
        {
            Fly("test");
        }

        public void Fly(string name)
        {
            Console.WriteLine("我的log日志。/n/n{0}", Environment.StackTrace);
        }
    }



 

這不。。。文件名,方法名,行數都已經脫褲了,也算是給我們看生產日志時候的一把利器吧。

二:Trim

  這個我想沒有程序員說不知道,但是里面有一個重載,這個不知道有多少程序員知道~

可以看到,我可以去掉字符串前后的指定字符,只要我在char[]中申請即可,而不是僅僅去掉空格,這次為什么要提它,是因為前幾天用asp對接.net的時候遇到的,在asp中有一個join方法,但是它不像C#中的String.Join(",")方法可以去掉尾部的“,” ,比如數組{1,2,3},在asp中join后會變成“1,2,3,”,而C#中會變成"1,2,3",這個時候當asp傳過來的話,在C#中就可以用Trim來剔除尾部的“,”了。

復制代碼 代碼如下:

var s = "1,2,3,";

            var r = s.Trim(new char[] { ',' });

            Console.WriteLine(r);

            Console.Read();

好了,大體就這樣了,沒什么技術含量,重點就是挖一挖,或許對你有用~

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 慈溪市| 水富县| 达州市| 亳州市| 富平县| 清河县| 革吉县| 张家口市| 龙川县| 彭州市| 江口县| 蒲城县| 平乐县| 仁怀市| 苍南县| 叶城县| 六盘水市| 久治县| 宜黄县| 墨脱县| 无极县| 濮阳市| 华亭县| 莱芜市| 岳阳县| 毕节市| 安阳市| 绥宁县| 七台河市| 如皋市| 丰宁| 双柏县| 高唐县| 沐川县| 商河县| 新竹市| 湾仔区| 余江县| 崇明县| 故城县| 册亨县|