Microsoft MVP성태의 닷넷 이야기
안녕하세요 WebService SoapExtensionImporter 에 대해서 질문드립니다. [링크 복사], [링크+제목 복사]
조회: 12595
글쓴 사람
서정열 (shining988 at gmail.com)
홈페이지
첨부 파일
 

안녕하세요
몇일 전에 질문을 남겼는데 wsdl을 보니 에러가 나오길래 자체 해결하였지만 SoapExtensionImporter에 들어가지 않아 이렇게 다시 질문을 남기게 되었습니다.

웹서비스를 메세지를 암호화 하려고 아래 URL을 참고하여 Extension 클레스 라이브러리를 만들었습니다.

https://msdn.microsoft.com/en-us/library/x4s9z3yc(v=vs.71).aspx

Extension dll을 GAC에 등록하였습니다.

위의 주소대로 machine.config에

      <serviceDescriptionFormatExtensionTypes>
        <add type="Extension.EncryptionOperationBinding,Extension,
              Version=1.0.0.0,Culture=neutral,
              PublicKeyToken=87c25bf447a59cdd"/>
      </serviceDescriptionFormatExtensionTypes>

      <soapExtensionImporterTypes>
        <add type="Extension.EncryptionExtensionImporter,Extension,
              Version=1.0.0.0,Culture=neutral,
              PublicKeyToken=87c25bf447a59cdd"/>

를 추가하였고,

웹서비스 프로젝트 web.config 에

        <soapExtensionTypes>
          <add type="Extension.EncryptionExtension, Extension,
             Version=1.0.0.0, Culture=neutral,
             PublicKeyToken=87c25bf447a59cdd"/>
        </soapExtensionTypes>

        <serviceDescriptionFormatExtensionTypes>
          <add type="Extension.EncryptionOperationBinding,Extension,
              Version=1.0.0.0,Culture=neutral,
              PublicKeyToken=87c25bf447a59cdd"/>
        </serviceDescriptionFormatExtensionTypes>

        <soapExtensionReflectorTypes>
          <add type="Extension.EncryptionExtensionReflector,Extension,
              Version=1.0.0.0,Culture=neutral,
              PublicKeyToken=87c25bf447a59cdd"/>
        </soapExtensionReflectorTypes>

를 추가하였습니다.

SoapExtensionReflector를 상속받은 클레스는 wsdl을 생성할 때에 정상적으로 브레이크 포인트가 잡히고,
wsdl에 ServiceDescriptionFormatExtension 에 대한 내용이 들어 있습니다.

그런데 SoapExtensionImporter 클레스에는 잡히지 않습니다.

클라이언트 wsdl에 특성이 추가가 안되는 부분에 대해서는 제가 SoapExtensionImporter 상속받은 클레스를 잘 못 구현했다고 생각하면 될텐데 브레이크 포인트 자체가 잡히지 않으니 무슨 문제인지 모르겠습니다.
SoapExtensionImporter 클레스는 아직 msdn 그대로입니다. 제가 web.config 나 machine.config를 잘 못 추가하였거나 빠진 부분이 있나요?
답변 부탁드립니다 감사합니다.


- 추가
웹참조를 하면 사용자 지정 도구 경고 : ServiceDescriptionFormatExtension의 선택적 가져오기 중 적어도 하나가 무시되었습니다.
라고 뜹니다.








[최초 등록일: ]
[최종 수정일: 12/31/2015]


비밀번호

댓글 작성자
 



2015-12-31 10시36분
혹시 SoapExtensionImporter를 어떤 경우에 사용하고 있는지 이해하셨나요?
정성태
2015-12-31 02시41분
답변해 주셔서 감사합니다.
솔직히 잘 모르겠습니다..
성태님 말씀 보고, 찾아보다가 http://www.sysnet.pe.kr/Default.aspx?mode=3&sub=0&pageno=0&detail=1&wid=1198
이글을 저번에 봤었는데 다시 한번 자세히 보고 성태님 답변도 몇번 읽어보니
커스텀 특성에 대해서 WSDL 생성에서 호출된다. 아닌가요?

이게 맞다면 새로운 특성을 만들어서 추가를 해봤는데 호출이 되지 않습니다..ㅠㅠ
그리고 SoapExtensionReflector 의 ReflectMethod()는 호출이 되서 wsdl에 들어갔는데
어째서 클라이언트 wsdl에는 추가가 되지 않는 건가요?

답변 부탁드립니다..ㅠㅠ

서정열
2016-01-01 01시47분
간단하게 설명하면 SoapExtensionImporter는 클라이언트 측에서 서버 측으로부터 조회한 WSDL을 보고 자동 소스 코드를 생성하는 과정에 참여하는 역할을 합니다. 따라서 BP에 잡히려면 자동 소스코드를 생성하는 exe가 실행될 때 그것을 디버그해야 합니다. 비주얼 스튜디오에서 서비스 프로젝트를 디버깅하는 과정에 실행되는 유형이 아닙니다.
정성태

[1]  2  3  4  5  6  7  8  9  10  11  12  13  14  15  ...
NoWriterDateCnt.TitleFile(s)
5932EK4/12/2024384다음 제네릭에서 널익셉션이 뜨는 이유를 알수있을까요? [1]
5931이대희4/2/2024758Windows 앱 SDK C# 템플릿의 용도가 무엇인지요? [1]
5930vict...2/22/20241689ef core, FromSqlRaw 맵핑 질문입니다. [4]
5929a2/17/20241786.Net 8 에서 디버거 변경 [1]
5928vict...2/5/20241939wpf에서 대량 데이터 보여주는 방법 추천 부탁드립니다. [1]
5926엄태영1/12/20241907잘못된 Task 사용으로 인한 데드락 관련 질문 입니다. [3]
5925Euni...12/22/20231851Visual Studio에서 nodejs 사용시 npm install -g @vue/cli 실행시 오류 [1]
5924Euni...12/21/20231920Visual Studio에서 nodejs 사용시 C:\Program Files\nodejs\\node.exe" "C:\Program Files\nodejs\\node_modules\npm\bin\npm-cli.js" prefix -g 를 찾지 못하는 설치 오류 [2]
5923정두호12/4/20232378MSSQL 데이터 전송과 공유폴더의 데이터 전송 차이점 [1]
5922Heeg...10/27/20234589C++의 double pointer를 C#에서 구현하는 방법이 잘 안됩니다. [3]
5921한예지 donator10/3/20234385마샬링 정의 및 목적이 궁금합니다. [5]
5920한예지 donator10/3/20233194C#과 WIN32 API 관계 질문드립니다. [4]
5919이건우9/27/20232894WinForm의 로딩속도 관련 질문입니다 [2]
5917한예지 donator9/14/20232981동기화 도구 질문 있습니다. [4]
5916한예지 donator9/3/20233135Thread.Sleep(500), await Task.Delay(500), Task.Delay(500) 차이점이 궁금합니다. [2]
5915한예지 donator8/30/20233054비동기 코드를 for 문 안에 작성한 경우 제어 변수가 올바르게 동작하지 않는 이유가 궁금합니다. [3]
5914한상욱8/11/20232872.net wpf에서 skiasharp 의 skelement 를 canvas로 사용 하고 있습니다. [1]
5913김태우8/10/20232956지역변수로 이해하는 메서드매개변수 게시글 댓글 [3]
5912guest4/25/20235119[참고 - 초보용] Sqlite 디비는 double이 없고 Real이 대신합니다 [3]
5911guest4/24/20233469Form1.cs와 외부 class.cs와 통신 (static async method포함) [4]파일 다운로드1
5910guest4/24/20233324Async 메서드와 try~catch [1]
5909guest4/22/20233707Visual Studio 구매 시(1인 개발자) [4]
5908guest4/22/20233573텅빈 원그리기 [5]
5907민성4/21/20233203안녕하세요 서버 백업 문제에 대해서 [2]
5906guest4/21/20233335Dispatcher 서비스 구현 질문 [1]
[1]  2  3  4  5  6  7  8  9  10  11  12  13  14  15  ...