다른 유형의 데이터 목록을 반환하는 기존 WCF REST/JSON 서비스가 있습니다. 각 응답에 개정 번호를 나타내는 단일 속성을 추가하고 싶습니다. WCF - 일반 클래스의 DataMember에 대한 사용자 정의 이름
는 응답이있을 때까지 내가 좋아하는 것, 내가 지금 다음{ [ {year: "1990", make: "bmw"}, {year: "2010", make: "ferrari"} ] }
처럼
[DataContract]
public class Car {
[DataMember]
public String make;
[DataMember]
public String year;
}
가 현재/자동차/자동차의 배열을 반환하는 '자동차'클래스가 말
{ revision:"1234", cars:[ {year: "1990", make: "bmw"}, {year: "2010", make: "ferrari"} ]}
나는 자동차의 단일 클래스 만 갖고 있지만 내 서비스에는 수백 개의 간단한 엔티티가 있으며 개정 속성과 엔티티 목록을 반환하는 것이 좋습니다. 기존 항목을 래핑하기 위해 제네릭 클래스를 만드는 경우 다음과 같은 작업을 수행 할 수 있다고 생각했습니다.
[DataContract]
public class VersionedItem<T> {
String revision;
T item;
[DataMember]
public String revision {
get{}
set{}
}
[DataMember]
public T item {
get{}
set{}
}
}
이 거의 내가 반환 할 다음 필요한 경우를 제외하고 잘 작동 :
{ revision:"1234", cars:[ {year: "1990", make: "bmw"}, {year: "2010", make: "ferrari"} ] }
이 실제로
{ revision:"1234", item:[ {year: "1990", make: "bmw"}, {year: "2010", make: "ferrari"} ] }
질문 1을 반환됩니다 인스턴스를 전문으로 할 수있는 방법이있다 항목 속성 (이 경우 자동차)의 올바른 이름을 지정하기 위해 일반 클래스의 IE (총 개판,하지만에 걸쳐 포인트를 얻을 수 있도록하기 위해)
public class VersionedCar : VersionedItem<Car>
{
[DataMember(Name="cars")]
public Car item{
get{}
set{}
}
}
질문 2 :이 아니라면, 뭐죠 모든 응답을 포장하고 모든 응답에 새로운 속성을 포함 달성하기 위해 가장 좋은 방법은?