[英]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)
以下之一(或它們的混合!)解決了我的問題:
bin
和obj
文件夾(我想就是這樣!) 我將其留給以后遇到相同問題的讀者使用。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.