2010-01-28 3 views
1

[RUN DOWN]가동일한 웹 서비스의 여러 버전을 실행할 수 있습니까?

  • 나는 웹 서비스 이름에 포함 된 버전 정보가있는 웹 서비스를 호출 할 필요가 있어요.
    EG. webserviceV1

  • wsdl에서 프록시 클래스를 생성 할 때 webservice 이름이 클래스 이름으로 사용됩니다.
    wsdl.exe 도구를 사용하고 있습니다.

  • 나는 새로운 버전의 웹 서비스가 내 코드베이스가 2 세트의 프록시 클래스를 지원해야한다는 것을 예상 할 수 있습니다. 또는 기존 프록시 클래스를 사용하는 코드의 이름을 바꿀 수 있습니다.

[MY 질문]

  • 나는이 프로젝트 초기에 있습니다로는 웹 서비스의 여러 버전을 제공 할 수 있도록 할 공급자에 대한 해결책을 제시하고 싶습니다.

  • 가능한 해결책은 다른 포트를 통해 웹 서비스를 제공하는 것입니다. 그러나 IIS를 통해 가능할 지 모르겠다.

  • 동일한 컴퓨터에서 여러 버전의 웹 서비스를 동시에 실행할 수 있습니까?

답변

3

물론 가능합니다. (제대로 사용 지점, 즉에 대한 몇 가지 생각에 대한 this 참조)

http://host/services/1.0/service.asmx 
http://host/services/1.3/service.asmx 
http://host/services/2.0/service.asmx 

당신은 다음 버전 방식을 고안해야합니다의 전체 버전을 지원하는 대신 웹 서비스 클래스에 버전 번호를 추가로 별도의 가상 디렉터리에 배치 서비스를 동시에 제공합니다.

코드의 경우 일반 인터페이스 (예 : AbstractService) 뒤에있는 서비스 버전 간의 차이를 추상화 한 다음 버전 별 구현 (ServiceV1_3)의 기본으로 사용할 수 있습니다.

Google이 정확한 주제에 대해 꽤 좋은 결과를 제공합니다.

+0

신속한 답변을 보내 주셔서 감사합니다. 이렇게하는 법을 배우려고합니다. –

+0

시도해 보면 훌륭합니다. 감사. –