2015-08-03 65 views
10

我似乎無法調試PCL庫(使用非常簡單的測試項目)。當斷點擊中並觀察窗口重新加載時,它會拋出CS0012: The type 'TaskAwaiter<>' is defined in an assembly that is not referenced. You must add a reference to assembly 'System.Threading.Tasks, Version=4.0.0.0, Culture=neutral, PublicKeyToken=null'.本地和自動窗口保持爲空。VS2015:在調試時未引用的程序集中定義類型'XXX'

我在Windows 10 Pro(乾淨安裝)上使用Visual Studio 2015 RTM(我沒有從任何以前的版本升級 - 它是從ISO完全安裝)。我的測試項目針對Windows Phone 8.1,並使用實際設備進行調試。

我發現了幾個對類似bug的引用,但是它在構建解決方案時發生了。就我而言,解決方案構建得很好,沒有錯誤或警告。 我嘗試手動添加System.Threading.Tasks.dll,但VS不會讓我 - 它說它是由構建系統自動添加的。

有沒有人遇到過這個問題(並希望修復它)?

+0

該消息是準確的,TaskAwaiter在手機上不可用。你如何得到它的依賴是很難猜測的。注意空的PublicKeyToken,這很糟糕。驗證PCL項目目標是否包括手機8.1,記錄您使用的任何Nuget軟件包。 –

+0

同樣在這裏,在我的情況下,無法調試的代碼位於**共享代碼**項目 – user1859022

+0

完全相同的問題。非常煩人,因爲我可以調試的唯一方法是寫出來的控制檯:( –

回答

15

我已經有完全相同的錯誤CS0012:... TaskAwaiter <> ... 這是VS2015中的已知問題。

https://support.microsoft.com/en-us/kb/3025133

爲了解決它去調試 - 選項 - 常規 - 使用傳統的C#和VB表達式求值(打勾)

+0

謝謝!它現在可以運行。 – eggplant

+0

這解決了我在調試Windows Phone應用程序時遇到的問題直接在設備上(我在前面的窗口中總是得到錯誤CS0012) – Gorgsenegger

+0

它對我沒有幫助,我剛剛得到一個新錯誤「價值現在無法獲得」 –

0

我找到了解決辦法對我來說,這個Blog解決這個CS0012錯誤問題。
只需添加引用,從丟失的DLL:

"C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework.NETFramework\v4.5.2\Facades" 

和錯誤消失。

+1

有一個缺少反斜槓,但由於白癡6 char編輯規則我無法編輯它。正確的路徑是C:\ Program Files(x86)\ Reference Assemblies \ Microsoft \ Framework \ .NETFramework \ v4.5.2 \ Fa凱茲 –

0

(因爲我沒有足夠的信譽發表評論,我必須寫一個新的答案...)

試圖檢查使用傳統的C#和VB表達評估之前,請務必停止調試框。否則它將變灰。

相關問題