2016-08-11 4 views
8

모델 및 색상에 대한 데이터가있는 작업 AddCar를 구현하는 WSDL 및 소비자/클라이언트를 작성했습니다. 이제 한 WS 제작자/서버는 길이에 대한 데이터도 갖기를 원합니다. 나는 다른 생산자가 구현 아웃소싱으로 인해 이러한 변화에 적응하는 데 어려움을 겪고 있다고 가정합니다. 내 옵션은 다음과 같습니다다른 공급자가있을 때 1 개의 공급자에 대해 소비자 엔드에서 WS- 작업에 요소를 추가하는 방법은 무엇입니까?

  1. 그냥 옵션 길이의 WSDL을 업데이트 같은 조작으로 WSDL 및 소비자 코드의 새로운 작동 AddCarWithLength
  2. 만들기 2 버전을 확인하고 그것은 단지 원하는 생산을위한 운전 데이터를 포함 그것.
  3. 0-N name-vaue 쌍 요소로 WSDL을 업데이트하고 원하는 WSDL 생성자 만 작업 데이터를 포함하십시오.
  4. 고객에게 WS 프로듀서를 구현 한 회사에 업데이트를 요청하십시오.

옵션 : 두 개의 코드 세트가 될 수 있도록

  1. 내가 소비자/클라이언트에서의 C# 클래스를 생성 한 질문
  2. 를 벗어났습니다. 나는 프로듀서/서버가 사용하는 버전 (config 매개 변수 또는 smthn)을 알아야만한다.
  3. 내가 말하는 제작자/서버를 알아야한다는 것을 의미한다. 3과 동일
  4. 하지만 미래의 확장은
  5. 이 문제가 될 수 있도록 할

질문 : 이 작업을 수행하는 올바른/가장 좋은 방법은 무엇 비현실적 일 수있다 업데이트 할 모든 생산자를 요구하는 경우?

답변

0

WSDL은 소중한 정의로 알려져 있습니다. 처음에는 서비스가 항상 사용과 미래에 대한 명확한 그림을 염두에두고 고안되어야합니다. 어쨌든, 이제 내 이해는 기존 WCF 서비스에 특성 (데이터 요소 길이)을 추가하는 것입니다. 나의 제안 될 것이다

  1. 는 분석하고 당신의 사용자 정의 클래스를 추가하고 데이터 계약로 이름을 지정하고 WCF 작업에 추가하고 새로운 인터페이스/운영 계약으로 노출됩니다.

예. 클래스 자동차 인 에는 속성으로 데이터 멤버가 있습니다. 속성에서 길이, 너비, 색, 무게 등의 모든 분석 결과 요소를 정의하십시오. Dictionary<string,string> CustomAttributes;도 추가하면 나중에 사용할 수 있습니다.

  1. 시간이별로 없어도 비슷합니다. 분석을하지 않고 Dictionary<string,string> Parameters;을 추가하고 새 계약서를 공개하고 활용하십시오.
+0

감사합니다! Top-> Down 개발을 사용하므로 WSDL을 변경하고 이후에 코드를 생성합니다. 당신은 제 옵션을 제안합니다 : "4. WSDL을 0-N 이름 - 값 쌍 요소로 업데이트하고 원하는 생성자에 대해서만 작업 데이터를 포함 시키십시오." 그러나 당신은 주된 질문 즉 생산자 A.K.A를 어떻게 처리해야하는지에 대해서는 언급하지 않았다.변화에 적응할 수없는 웹 서비스. –