2012-07-10 94 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

相关问题