2013-12-18 51 views
3

當試圖在引用的程序集中執行一個函數時,我有這個奇怪的錯誤。我有程序集的源代碼,並沒有命名空間稱爲「XmlSerializers」,所以我不能爲我的生活理解爲什麼它試圖加載'Netaccounts.Ola.RestClient.XmlSerializers'爲什麼.NET試圖加載一個不存在的程序集?

任何人都可以建議從哪裏開始解決這個問題?我認爲.Net框架或視覺工作室有些問題,因爲這對我來說毫無意義。

它發生在這條線

XmlSerializer serializer = new XmlSerializer(type); 

但XmlSerializer的是從的System.Xml.Serialization到來。我甚至重寫代碼,但沒有效果。我犯了同樣的錯誤。

System.Xml.Serialization.XmlSerializer serializer = new System.Xml.Serialization.XmlSerializer(type); 

乾杯!

BindingFailure occurred 
Message: Managed Debugging Assistant 'BindingFailure' has detected a problem in 'D:\Local Dev Projects\Projects\WRJ Studio\WRE Quote Builder\bin\Debug\WRJ Studio.vshost.exe'. 
Additional information: The assembly with display name 'Netaccounts.Ola.RestClient.XmlSerializers' failed to load in the 'LoadFrom' binding context of the AppDomain with ID 1. The cause of the failure was: System.IO.FileNotFoundException: Could not load file or assembly 'Netaccounts.Ola.RestClient.XmlSerializers, Version=1.0.5101.5654, Culture=neutral, PublicKeyToken=1809573d4ad081b2' or one of its dependencies. The system cannot find the file specified. 
+0

只要確定:你確定它是你的代碼上的行它是拋出錯誤? –

回答

3

這是一個完全正常的警告,如this answer中所述。這不是一個例外。

您幾乎可以肯定地在Debug + Exceptions對話框中犯了一個錯誤。你不小心點擊了投擲複選框Managed Debugging Assistants,實際上將它們全部打開。打開節點並取消「BindingFailure」警告。如果您看到它們全部打勾,然後單擊「重置全部」按鈕將所有內容都恢復原樣。

+0

嗨@Hans,其實是故意的。最初的錯誤是找不到文件,但我設置了異常來引發託管代碼,以嘗試獲取更低級別的內容,這可能會更有幫助。 –

+0

但我確實有一個投擲在另一個複選框之前打勾。我刪除了所有複選框中的勾號,並「解決」它。謝謝! –

0

您引用的程序集之一...可能(在內部對您隱藏)....您看到此程序集。

獲取ILSpy並檢查您的任何第三方參考。它會告訴你第三方程序集引用了什麼。

相關問題