[英]Vs2017 Source Not Available
我正在嘗試通過單擊堆棧跟蹤來調試System.Net.Http.Formating.dll:
System.Net.Http.Formatting.dll!System.Net.Http.Formatting.JsonMediaTypeFormatter.WriteToStreamAsync.AnonymousMethod__c()
我的“只是我的代碼已禁用”,我有以下符號服務器:
https://nuget.smbsrc.net
http://localhost:33417/ (dot peek)
Microsoft Symbol Server
我確實有pdb可用,但是我得到以下錯誤/圖像。
如何正確克服它?
為什么在Visual Studio中調試第三方源代碼會如此麻煩?
在按照@Jack Zhai-MSFT指出的鏈接后,我終於能夠理解.net框架無法調試的原因。
事實證明,這些符號是在沒有各自來源的情況下下載的,因為我指的是Microsoft Symbol Server而不是http://referencesource.microsoft.com/symbols
然后,我的以下嘗試是取消選中“Microsoft Symbols Server”或更改符號菜單中的順序。 令我驚訝的是,我無法刪除它,也無法更改順序,即使在禁用之后,仍然會從那里獲取符號。
也許這是一個VS2017社區錯誤。
我接下來做了什么,實際上解決了它:
請注意,我仍然無法下載像system.net.http這樣的“優化符號”,但我會嘗試下一步
另外,我使用它作為參考設置符號服務器,這有助於我及時獲得任何第三方符號(除了.net)
https://www.symbolsource.org/Public/Wiki/Using
編輯:
在dotPeeker的幫助下,我能夠通過以下方式獲取所有丟失的pdb文件:
唷! 對於應該是微不足道的事情來說真是個麻煩!
要調試第三方源代碼,可以使用.NET Reflector或dotPeek與VS.
參考:
更新:
如果您只想調試.NET源代碼,請參閱: 如何在Visual Studio 2017中調試.NET 4.6框架源代碼?
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.