이 가능 (제공은 DataContractAttribute 및 DataMemberAttribute와 사용자 정의 클래스)를 WCF 3.5 서비스에서이 같은 방법 서명을하는 것입니다 :WCF RESTful 서비스에서 json 형식의 IList를 반환하는 방법은 무엇입니까?
[OperationContract]
[WebGet(UriTemplate = "GetOffers", ResponseFormat = WebMessageFormat.Json, BodyStyle = WebMessageBodyStyle.Bare)]
IList<Offer> GetOffers();
나는 웹 브라우저에서 해당 URL을 입력하면, 내가 얻을 수 있기 때문에 직렬화 오류 (나는 IList에 Serializable 특성이 없기 때문에 JSON 직렬 변환기가 Serialize 할 수 없기 때문에 생각한다).
해결 방법은 이와 같은 방법 서명 사용하는 것이다 :
[OperationContract]
[WebGet(UriTemplate = "GetOffers", ResponseFormat = WebMessageFormat.Json, BodyStyle = WebMessageBodyStyle.Bare)]
List<Offer> GetOffers();
같은 직렬 출력 (간단한 JSON 배열)의 결과를, 그러나 첫 번째는 XML로 작동하기 때문에, I는 경우 궁금 동일한 서명을 유지하면서 json에서 작동하게하는 방법이있었습니다.
편집 : XML 직렬화에서도 작동하지 않으므로 정상적인 것으로 보입니다. 질문은 여전히 유효합니다.이 서명을 유지하고 serializer 동작을 변경하여이 작업을 수행 할 수 있습니까? 방법?