2012-06-19 3 views
1

I 나는 난처한 상황에 빠진 및 내가 만든 HttpModule을 사용하도록 구성되어 내 응용 프로그램에서 무엇입니까 다음과 같은 오류 해결에 몇 가지 제안이 필요합니다서버 오류 로딩 HttpModule을

Server Error in '/' Application. 
-------------------------------------------------------------------------------- 

Could not load type 'namespaceResponseModifier.ResponseModifer'. 

... 

Exception Details: System.Web.HttpException: Could not load 
type 'namespaceResponseModifier.ResponseModifer'. 

... 

Stack Trace: 

[HttpException (0x80004005): Could not load type 'namespaceResponseModifier.ResponseModifer'.] 

... 

[ConfigurationErrorsException: Could not load type 'namespaceResponseModifier.ResponseModifer'.] 

... 

-------------------------------------------------------------------------------- 
Version Information: Microsoft .NET Framework Version:4.0.30319; ASP.NET Version:4.0.30319.272 

웹 서버입니다 IIS 7.0.

<system.webServer> 
     <modules> 
      <add name="ResponseModifier" 
       type="namespaceResponseModifier.ResponseModifer" /> 
     </modules> 
    </system.webServer> 

The assembly for the HttpModule resides in 
C:\...\HttpModulePreSendRequestContentCS\Bin\ResponseModifier.dll 

나는 또한을 App_Code 디렉터리 에서 HttpModule을위한 소스를 배치 시도했지만 난 여전히로드에 서버 오류가 점점 오전 : web.config 파일에서

, 요소의 코드는 HttpModule. 나는 또한 Visual Studio를 개발 웹 서버 대신 IIS 익스프레스 웹 서버를 사용하여 시도

Server Error in '/' Application. 
-------------------------------------------------------------------------------- 

Could not load type 'namespaceResponseModifier.ResponseModifer' from assembly 'App_Code'. 

... 

Exception Details: System.TypeLoadException: Could not load 
type 'namespaceResponseModifier.ResponseModifer' from assembly 'App_Code'. 

... 

Stack Trace: 

[TypeLoadException: Could not load type 'namespaceResponseModifier.ResponseModifer' from 
assembly 'App_Code'.] 

... 

[ConfigurationErrorsException: Could not load type 'namespaceResponseModifier.ResponseModifer' 
from assembly 'App_Code'.] 

... 

[HttpException (0x80004005): Could not load type 'namespaceResponseModifier.ResponseModifer' 
from assembly 'App_Code'.] 

... 

-------------------------------------------------------------------------------- 
Version Information: Microsoft .NET Framework Version:4.0.30319; ASP.NET Version:4.0.30319.272 

이 두번째 시나리오에서

, 나는 다음과 같은 오류를 얻고있다. 이 서버는 - 빈 폴더 의 어셈블리와 함께 - App_Code 폴더의 원본과 함께 사용했습니다. 나는 문제가 주시면 감사하겠습니다 해결하기 위해 무엇을 할 수 있는지에 관해서는

Server Error in '/HttpModulePreSendRequestContentCS' Application. 
-------------------------------------------------------------------------------- 

Configuration Error 

... 

Parser Error Message: Could not load type 'ResponseModifer'. 
(C:\...\HttpModulePreSendRequestContentCS\web.config line 8) 

... 

Source File: C:\...\HttpModulePreSendRequestContentCS\web.config Line: 8 

-------------------------------------------------------------------------------- 
Version Information: Microsoft .NET Framework Version:4.0.30319; ASP.NET Version:4.0.30319.272 


Server Error in '/HttpModulePreSendRequestContentCS' Application. 
-------------------------------------------------------------------------------- 

Configuration Error 

... 

Parser Error Message: Could not load type 'ResponseModifer' from assembly 'App_Code'. 
(C:\...\HttpModulePreSendRequestContentCS\web.config line 8) 

... 

Source File: C:\...\HttpModulePreSendRequestContentCS\web.config Line: 8 

-------------------------------------------------------------------------------- 
Version Information: Microsoft .NET Framework Version:4.0.30319; ASP.NET Version:4.0.30319.272 

어떤 제안 :

이러한 시나리오는 각각 다음과 같은 오류를 생산했다.

답변

3

이전 질문이지만 모듈 추가가 잘못되었다고 생각합니다.

<add name="NameOfModule" type="Namespace.NameOfModule, AssemblyName" /> 

내가 그것을 볼 수있는 일반적인 방법이므로,이 모듈에 대한 네임 스페이스를 모르는 것은, 그것은 가까이 보이는 것 :

위의 질문에 대해 답
<add name="ResponseModifier" type="ActualNameSpaceGoesHere.namespaceResponseModifier.ResponseModifer, ResponseModifier" /> 
0

, 왜 당신의 이름을 추가합니다 유형의 끝에 조립? 그건 내 말이 맞지 않아.

+0

그것이 작동하는 방식입니다. Joe, 클래스 이름 뒤에 assemply 이름이옵니다. –

+0

나는 그 의도를 정확히 알지 못하지만 나의 추측은 그것을 찾기 위해 스캔을 줄이는 것이라고 생각한다. 로드 된 모든 어셈블리에서 ResponseModifier를 찾지 않고이 특정 위치의 어딘가에 있습니다 (그렇지 않으면 폭탄을 터뜨릴 수 있습니다). – Robert