簡介
當人員進行專案開發時,經常需要查看他們在代碼中所使用的型別或類成員的源代碼定義, 在 Visual Studio 中,經常使用 “轉到定義”和“速覽定義” 查看型別或成員的定義 , 如果源代碼不可用,則會顯示為元資料,
常規 F12
使用 Visual Studio 創建 .NET Core Web API 專案,接著在 starup 輸入 ServiceDescriptor 類,然后 F12

可以看到,此時我們只能看到 ServiceDescriptor 類的成員,并看不到實作

現在 F12
接著從選單欄中選擇“工具” > “選項”, 然后,展開“文本編輯器” > “C#” > “高級”,并選擇“啟用導航到反編譯源代碼”,
設定完成后,再次 F12,可以看到此時,可以看到 ServiceDescriptor 類成員的實作

.NET Framework 與 .NET Core
反編譯配置下,ILSpy 在反編譯 .NET Framework 與 .NET Core 有時會有不同的,如:string
1).NET Framework
在 .NET Framework 下,看 string 的 IsNullOrEmpty 可以看到內部實作

2).NET Core
在 .NET Core下,看 string 的 IsNullOrEmpty 不可以看到內部實作

原理
Visual Studio 是使用 ILSpy 反編譯重建方法體, 第一次訪問此功能時,必須同意有關軟體授權以及著作權和商標法律的法律免責宣告,
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/413509.html
標籤:其他
