2012-11-26 6 views
0

내 회사에서 호스팅하지만 제 3 자에 의해 구현 될 웹 서비스에 대한 웹 서비스 API 및 데이터 계약을 만들어야합니다. 그렇게하는 가장 좋은 방법은 무엇입니까?제 3 자에 의해 구현 된 WCF 서비스 만들기

이상적으로 제 3자가 .NET이나 특정 기술을 사용해야하는 것은 원하지 않습니다. 나는 그 (것)들에게 가동과 자료 계약을주고 싶다. 다음 가장 쉬운 솔루션은 단순히 C# 또는 VB.NET의 인터페이스와 계약을 정의하는 것입니다 - - 작업이을 계약의 서비스 계약을 (

+0

그러나 그들은 호스트를 만들어야합니다 우리가 제공 한 운영 및 데이터 계약을 사용하고 프로젝트를 수행합니까? .NET을 전혀 사용하지 않으면 어떻게 될까요? – jjm340

+0

그들이 당신을 위해 (그리고 당신이 유지하기 위해) 서비스를 만들고 있다면, 반드시 사용해야 할 기술을 ** 분명히 지정해야합니다. –

답변

3

IF 타사 는 .NET를 사용 서비스 메서드)를 사용하는 경우 데이터는 과 계약을 맺지 만 (형식은 앞뒤로 전달됩니다.) 구현을 타사에 맡깁니다.

이 모든 것을 별도의 클래스 라이브러리 어셈블리에 넣고 그 어셈블리를 API 정의로 보낼 수 있습니다. 그런 다음 해당 타사는 서비스 구현을 C#/VB.NET 클래스 라이브러리로 구현 한 다음 다시 제공 할 수 있습니다.

경우 타사 는 서비스와 방법, 일부 XSD를 설명하는 WSDL (웹 서비스 설명 언어) 문서를 만들 .NET을 전혀, 당신은 한 사용하지 않는 (XML 스키마) 파일은 앞뒤로 전송되는 데이터 유형을 설명합니다.

기본적으로 위와 동일한 단계를 수행하여 서비스, 운영 및 데이터 계약을 생성 한 다음 해당 서비스의 "더미"구현을 직접 구현하여 쉽게 수행 할 수 있습니다. 그 서비스를 시작하고 실행중인 서비스에서 WSDL/XSD를 생성하십시오. 해당 문서를 제 3 자에게 제공하여 서비스 자체를 구현하게하십시오.

또는 물론

- 당신은 또한 처음부터 수동으로 WSDL/XSD를 작성할 수 있습니다 -하지만 그건 B) 마조히즘 A) 블랙 예술에 국경과 - 권장하지 ...

+0

자, 이제 WSDL과 XSD를 생성하고 서비스를 구현합니다. 그런 다음 해당 서비스에 대한 클라이언트를 구현해야합니다. Visual Studio에서 서비스 참조 생성을 사용할 수 없다고 가정합니다. 서비스 버전이 설치되어 있지 않으면 예외입니다. – jjm340

+0

각 메서드가 인 svc.vb 파일 마크 업에서 .asmx? wsdl을 누르면 전통적인 WSDL을 얻을 때 .asmx 파일 (.svc 파일과 같은 내용)을 추가하십시오. – lcryder

+0

@ jjm340 : 작성한 WSDL/XSD 파일에서 서비스 클라이언트 (a)를 생성하거나 구현 된 서비스에서 일단 (-) 실행 한 후에 서비스 클라이언트를 생성 할 수 있습니다. –

관련 문제