簡體   English   中英

VS調試器中的奇怪符號和缺少的方法異常

[英]Strange symbol in VS debugger and missing method exception

我的設置是這樣的:

  • 域模型項目=>包含我的實體。 與服務器和客戶端應用程序共享。

  • Server / webservices => MVC WebAPI,並且使用Json.Net庫將數據作為JSON返回。

  • 客戶端=> C#Winforms應用程序,使用RestSharp和Json.Net庫檢索數據。

陳述完我的設置后,我想聲明我的設置正在運行,直到最近進行一些更改后才沒問題。

我向我的一個實體(域模型項目)添加了一些新屬性,修改了我的Web服務以利用所執行的更改,然后重新啟動。 好的,它起作用了,返回的JSON還告訴我,新字段正在正確處理。

到現在為止還挺好。 現在,客戶端部分。 我調試了從服務器接收到的JSON,並且新數據(具有新屬性)很好。 但是,當Json.Net嘗試將數據解析為實體時,只會顯示一些屬性。 當我嘗試用數據填充數據時,我得到MissingMethodException

{“找不到方法:'System.String Domain.Equipment.get_Weight()'。”}

Weight確實是我最近進行的更改之一,但是代碼可以編譯。

我嘗試構建,重新構建,刪除並再次添加對域模型項目的引用(再次構建和重新構建),但仍然遇到相同的異常錯誤。

但是,我在調試時注意到一個奇怪的VS圖標,如下所示:

奇怪的圖標

我是VS2012的新手,所以可能有些瑣碎。 關於該圖標有什么想法嗎? 還是為什么會發生這種情況?

有關更多說明,請留下評論,我將進行編輯。

那個奇怪的藍色圖標表示該財產受到保護。 如果該屬性是私有的,則會得到一個停止符號。 這些圖標與出現在變量Windows中的較小圖標不同(掛鎖為私有,星號為受保護)。

您可以在此處查看圖標列表: http : //msdn.microsoft.com/zh-cn/library/y47ychfe.aspx

盡管該列表未包含將鼠標懸停在變量上時出現的較大圖標,例如您截屏的藍色圖標。 我實際上想知道不同的圖標是否是Visual Studio中的錯誤。 對於變量窗口和上下文/樹視圖使用相同的圖標似乎更有意義。

如果收到MissingMethodException,則實際上意味着您正在調用程序集的舊版本。 您GACed了裝配體嗎? 也許GAC中有一個較舊的版本,並且正在采用。

您還可以嘗試回收或重新啟動,以防任何東西緩存了內容(例如IIS)

以下之一(或它們的混合!)解決了我的問題:

  • 刪除項目並重新添加。
  • 清潔的
  • 刪除binobj文件夾(我想就是這樣!)
  • 重建
  • 重新啟動VS
  • 重新啟動

我將其留給以后遇到相同問題的讀者使用。

暫無
暫無

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

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