C#探秘系列(三)——StackTrace,Trim。本站提示廣大學習愛好者:(C#探秘系列(三)——StackTrace,Trim)文章只能為提供參考,不一定能成為您想要的結果。以下是C#探秘系列(三)——StackTrace,Trim正文
一: 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();
好了,年夜體就如許了,沒甚麼技巧含量,重點就是挖一挖,也許對你有效~