2010-07-05 2 views
2

OData 프로토콜 및 해당 WCF 데이터 서비스 구현에 메타 데이터 버전 관리 지원이 있습니까?OData/WCF 데이터 서비스 메타 데이터 버전 관리

단일 Goods 컬렉션을 노출하는 OData 서비스가 있고 상품 엔터티 유형이 Key (문자열), Name (문자열) 및 AvailableSince (문자열)의 세 가지 속성을 가지고 있다고 가정 해 보겠습니다. 서비스가 이미 실행 중이며이 메타 데이터 스키마에 의존하는 일부 사용자가 있습니다. 다음으로 우리는 Goods 엔티티 유형을 업데이트하려고합니다. 예를 들어 Property AvailableSince (string)을 다른 것으로 바꾸거나 문자열을 datetime으로 변경합니다. 그러면 메타 데이터의 두 가지 버전과 메타 데이터의 첫 번째 버전을 사용하는 소비자가 있습니다. 2 차 메타 데이터 스키마 측면에서 올바른 요청을 보낼 수 없습니다.

단일 서비스 내에 두 메타 데이터 버전을 모두 제공 할 수있는 방법이 있습니까? 그렇다면 소비자가 요청시 메타 데이터 버전을 어떻게 지정할 수 있으며 WCF 측에서 처리해야하는 방법은 무엇입니까?

감사합니다.

+0

제쳐두고, 하나로, OData 엔티티는 대부분 인터페이스보다 훨씬 이하로 이동하는 경향이있다. 예, 시간이 지남에 따라 새 필드가 추가되지만 PurchaseOrder 엔티티는 항상 동일하게 작동합니다. UpdatePurchaseOrder 메소드의 구현은 변경 사항에 따라 변경 될 수 있지만 엔티티 자체는 시간이 지남에 따라 매우 유사하게 유지됩니다. 그것이 OData와 Business Entity 중심 개발을 좋아하는 이유 중 하나입니다. –

답변

4

짧은 대답 : 아니오.

대부분의 메타 데이터를 변경하려면 새로운 서비스 나 기존 클라이언트가 필요합니다. 고객의 기존 설정이 중요하다면, 우리의 일반적인 추천 새로운 서비스를 만드는 것입니다

...

즉, 뭔가 같은 :

/v1/myservice.svc 
    & 
/v2/myservice.svc 

알렉스

중 하나로, OData 프로그램 관리자