2009-09-03 3 views
0
<component id="errorhandler1" 
      service="System.ServiceModel.Description.IServiceBehavior, System.ServiceModel" 
      type="Nbs.CoreServices.GenericErrorHandler.ErrorHandler, Nbs.CoreServices.GenericErrorHandler" /> 

성을 사용하여 WCF를 사용하여 오류 처리기 구성 요소를 주입하려고합니다. 이 오류가 발생하면 서비스에서 System.ServiceModel을로드 할 수 없습니다.WCF 통합 기능이 예외를 throw합니다. System.ServiceModel을로드 할 수 없습니다.

+0

나는 당신이 _did_ WCF가 포함 된 System.ServiceModel dll에 대한 참조를 추가한다고 가정합니다. – mookid8000

답변

0

네 가지 이유 : 당신하여 System.ServiceModel.dll에 대한 참조가없는

  • 프로젝트 2.0
  • 프레임 워크로 표시되어 설치되어 있지 않은 3.5 (또는 3.0) 프레임 워크
  • Visual Studio 2005를 사용 중입니다.
+0

위와 3.5 버전을 모두 점검했습니다. VS 2008을 사용하고 있습니다. System.ServiceModel.dll은 GAC에 있으며 참조를 넣어도 실패합니다. 그러나 Copy local = true라고하면 ... – chugh97

+0

여러 버전의 시스템이있는 것 같습니다. .ServiceModel.dll, Framework 3.5 SP1을 다시 설치해보십시오. –

+0

제 3 자 라이브러리와 아무 관련이 없습니다. –

0

이것은 오래된 게시물이지만 내 회사가 아직 차고 있기 때문에 체중이 줄 것이라고 생각했습니다. 설치 프로그램에 XML 구성 요소를 등록한 오래된 학교. 여기에서는 O.P.가 수행 한 것처럼 System.ServiceModel에 부분 어셈블리 이름을 사용했습니다. 어떤 이유로 든, 이것은 지속적으로 실패합니다. 이상하게도 fuslogvw는이 시나리오에서 오류 대신 경고를 제공합니다. 그래서 이야기의 도덕은 IServiceBehavior 및 IErrorHandler와 같은 WCF 구성 요소를 등록 할 때 System.ServiceModel의 정규화 된 어셈블리 이름을 사용하는 것입니다.

예 :

System.ServiceModel.Description.IServiceBehavior,는 system.serviceModel, 버전 = 4.0.0.0, 문화 = 중립, PublicKeyToken = b77a5c561934e089

". 많은 Bothans은 우리에게이 정보를 가지고 사망"

관련 문제