簡體   English   中英

“無法找到或打開另一個解決方案中找到的類庫的PDB文件”

[英]“Cannot find or open the PDB file” of a class library found in another solution

問題:

SolutionA (MVC解決方案)無法加載SolutionB (業務邏輯類庫)中的某個類庫的PDB文件。 (它加載其他類庫pdbs就好了)

環境:

  • .Net 4.0
  • MVC
  • C#
  • Visual Studio 2012
  • 在類庫的Debug / bin文件夾中找到PDB文件
  • 在引用此類庫的所有項目(Debug / bin)中找到PDB文件。
  • PDB創建時間與編譯時間相同

本地路徑:

• C:\MyPath\WK_SOLUTIONA\Dev_BF\SolutionA
• C:\MyPath\WK_SOLUTIONB\Prod\SolutionB

如果有SolutionA到SolutionB的引用(即dll引用),則設置引用路徑(Properties> Reference Paths)

符號加載信息:

C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Temporary ASP.NET Files\launcher_devbf\0a01d364\380351a5\assembly\dl3\9ae300b0\47b07c94_5317cf01\SolutionBClassLibrary.pdb: Cannot find or open the PDB file.
b:\23\575\src\SolutionBClassLibrary \obj\Release\SolutionBClassLibrary.pdb: Cannot find or open the PDB file.
C:\Windows\SolutionBClassLibrary.pdb: Cannot find or open the PDB file.
C:\Windows\symbols\dll\SolutionBClassLibrary.pdb: Cannot find or open the PDB file.
C:\Windows\dll\SolutionBClassLibrary.pdb: Cannot find or open the PDB file.
C:\Users\R9962~1.SCH\AppData\Local\Temp\SymbolCache\SolutionBClassLibrary.pdb\4c48672e09774c67b9f8001ecafacbd71\SolutionBClassLibrary.pdb: Cannot find or open the PDB file.
C:\Users\R9962~1.SCH\AppData\Local\Temp\SymbolCache\MicrosoftPublicSymbols\SolutionBClassLibrary.pdb\4c48672e09774c67b9f8001ecafacbd71\SolutionBClassLibrary.pdb: Cannot find or open the PDB file.
C:\MyPath\WK_SOLUTIONB\Prod\SolutionB\bin\Debug\SolutionBClassLibrary.pdb: PDB does not match image.
SYMSRV:  C:\Users\R9962~1.SCH\AppData\Local\Temp\SymbolCache\SolutionBClassLibrary.pdb\4C48672E09774C67B9F8001ECAFACBD71\SolutionBClassLibrary.pdb not found
 
 
SYMSRV:  http://referencesource.microsoft.com/symbols/SolutionBClassLibrary.pdb/4C48672E09774C67B9F8001ECAFACBD71/SolutionBClassLibrary.pdb not found
 
 
http://referencesource.microsoft.com/symbols: Symbols not found on symbol server.

我嘗試過的:

  • 確保清潔和重建的兩個解決方案
  • 清除符號緩存並手動刪除以下內容:C:\\ Windows \\ Microsoft.NET \\ Framework64 \\ v4.0.30319 \\ Temporary ASP.NET Files
  • 手動將pdb文件插入符號緩存C:\\ Windows \\ Microsoft.NET \\ Framework64 \\ v4.0.30319 \\ Temporary ASP.NET File
  • 將符號路徑“加載符號”指向SolutionBClassLibrary的調試文件夾。 結果:“在此文件夾中找不到匹配的符號文件”
  • 工具>選項>調試>設置“啟用.NET Framework源步進”(適用於兩種解決方案)
  • 刪除了IIS虛擬目錄並重新創建。
  • SoltionA調試到SolutionB
  • SolutionA開始調試並繼續在SolutionB上調試。 每當這個特定的類庫被命中時,它都會忽略我的更改。

我找到了一種解決方法來達到預期的效果。 基本上手動覆蓋那些引用我的更改的dll。 由於這是一個當地環境,因此沒有任何影響。

然而,正如我所說,這是一種workaround並且首先使用參考路徑。

編輯:顯然現在我的所有更改都被跟蹤,因為我已經完成了這項工作。 所以這確實是正確答案!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM