2012-07-10 59 views
4

我非常困惑!方法X從組件Z中的類型Y沒有執行

我有一個解決方案,發佈並部署時給我下面的錯誤:

Exception information: 
Exception type: HttpException 
Exception message: Method 'GetDemosSubsidiaryById' in type 'DG.Crm.DataAccess.Crm2011WS.Repositories.ReferenceEntitiesRepository' from assembly 'DG.Crm.DataAccess.Crm2011WS, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null' does not have an implementation. 
<stack trace> 

顯然,建立精細和方法的實現,肯定存在於庫中。我用反射器來檢查部署的DLL,並且我看不到任何不尋常的東西 - 類存在,類型在那裏,方法被實現。它所抱怨的特定方法甚至沒有被調用。

我已經刪除了所有參考文獻,並在解決方案中對其進行了閱讀。

我使用Visual Studio中的「實現接口」快捷方式重新創建了DG.Crm.DataAccess.Crm2011WS.Repositories.ReferenceEntitiesRepository

該解決方案在Visual Studio中加載並正常工作。

我在這裏錯過了什麼,或者在哪裏可以找到更多信息?

編輯添加的解決方案結構:

enter image description here

2011WS庫實現了住在Common庫接口。然後兩者都被WebApps MVC Web應用程序引用。

+0

是你的程序集DG.Crm.DataAccess.Crm2011WS?你檢查了給定的方法是否被執行?您的程序集是否來自GAC? – nunespascal 2012-07-10 03:55:07

+0

愚蠢的問題,但你確認在IIS中指定的.NET版本是否與您的項目中使用的版本相匹配? – 2012-07-10 03:58:51

+0

這是我的程序集是和實現的方法(否則我會看到編譯時錯誤告訴我接口尚未實現)。據我所知,GAC中沒有任何圖書館。 – glosrob 2012-07-10 08:57:55

回答

2

原來在GAC中有一箇舊版本的庫。我遇到的問題是圖書館處於衝突狀態的是DTO,而不是那些在錯誤中引用的圖書館。

因此,在我的情況下,要更加小心GAC的生活!

+0

我的問題類似。有一個後期構建的事件gacutil .dll。 gacutil路徑錯誤導致該項目仍在構建,但從未在GAC中進行更新。 – 2017-11-23 16:24:13

3

只是一個FYI ...我有這個相同的確切的錯誤。在我的情況下,原來是組件A引用的組件B不在GAC中。該錯誤表明組件A存在問題,因此有點誤導。

+0

就我而言,我在一個程序集中有一個接口,專門用於兩個位置的合同。此程序集中只有一個位置已更新,但發生了另一個應用程序首先加載的情況,並導致此異常。 – StingyJack 2014-03-07 12:53:35

相關問題