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

首頁 > 編程 > .NET > 正文

.NET中取得代碼行數的方法

2024-07-10 12:54:33
字體:
來源:轉載
供稿:網友

.Net幾乎是每個程序員都使用的工具。默認情況下,代碼編輯器沒有行號,代碼編輯器的每個頁面中可能有數千行,今天錯新技術頻道小編為大家整理了.NET中取得代碼行數的方法,一起來看看吧!

復制代碼 代碼如下:

[STAThread]
static void Main(string[] args)
{
ReportError("Yay!");
}

static private void ReportError(string Message)
{
StackFrame CallStack = new StackFrame(1, true);
Console.Write("Error: " + Message + ", File: " + CallStack.GetFileName() + ", Line: " + CallStack.GetFileLineNumber());
}


StackFrame(Int32, Boolean) 初始化與當前堆棧幀之上的幀對應的 StackFrame 類的新實例,可以選擇捕獲源信息。

GetFileName :獲取包含所執行代碼的文件名。 該信息通常從可執行文件的調試符號中提取。

GetMethod :獲取在其中執行幀的方法。

GetFileLineNumber :獲取文件中包含所執行代碼的行號。 該信息通常從可執行文件的調試符號中提取。

利用Exception(例外)的StackTrace類

?

復制代碼 代碼如下:

?


try
{
throw new Exception();
}
catch (Exception ex)
{
// Get stack trace for the exception with source file information
var st = new StackTrace(ex, true);
// Get the top stack frame
var frame = st.GetFrame(0);
// Get the line number from the stack frame
var line = frame.GetFileLineNumber();
}


.NET4.5 新方法

?

復制代碼 代碼如下:

?


static void SomeMethodSomewhere()
{
ShowMessage("Boo");
}
...
static void ShowMessage(string message,
[CallerLineNumber] int lineNumber = 0,
[CallerMemberName] string caller = null)
{
MessageBox.Show(message + " at line " + lineNumber + " (" + caller + ")");
}

以上就是關于.NET中取得代碼行數的方法,相信認真看完的朋友都已經懂了,我們還有更多的技術資訊,敬請關注js.VeVb.com吧!

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 分宜县| 安龙县| 泰兴市| 红河县| 自治县| 阳原县| 舞阳县| 宾川县| 乳源| 稷山县| 云安县| 蓬溪县| 门源| 舒兰市| 天津市| 紫阳县| 广元市| 石城县| 田东县| 天门市| 房产| 林州市| 彰化县| 长泰县| 九龙县| 郓城县| 五指山市| 和静县| 迁西县| 汉寿县| 科技| 甘谷县| 海南省| 全椒县| 乃东县| 凤台县| 乳源| 班戈县| 东阿县| 澎湖县| 高州市|