꽤 큰 프로젝트를 인수했습니다. 내 임무 중 하나는 FedEx에서 요금 견적을받는 코드를 수정하는 것입니다. 현재 각 "서비스 유형"(지하철, 2 일간, 야간 등)에 대한 견적을 포함하는화물에 대한 요금 견적을 얻기 위해 코드는 각 유형별로 한 번의 전화를합니다. FedEx는이 정보를 얻는 데 사용되는 웹 서비스를 제공합니다. 약간의 연구를 한 후에이 웹 서비스는 단일 왕복으로 여러 ServiceType 견적을 반환 할 수있는 것처럼 보입니다. 이렇게하려면 "서비스 유형을 요청에서 제외해야합니다." (Here's the question that pointed me in that direction)XML로 직렬화 할 때 클래스 멤버를 선택적으로 제외하는 방법
따라서 서비스 유형 속성을 [System.Xml.Serialization.XmlIgnoreAttribute()]
과 함께 꾸미면 직렬화에서 서비스 유형 속성을 제외 할 수 있습니다. 그러나 모든 ServiceType 값에 대한 결과를 원할 때 어떻게해야합니까? 그리고 사용자가 원하는 배송 방법을 알고있는 경우 단일 서비스 유형을 계속 전달할 수 있습니까?
편집 : FedEx의 문서에 따르면이 필드는 선택 사항입니다. 일부 기본 테스트에서는 XmlIgnoreAttribute를 사용하여 요청에서 제외하면 여러 ServiceTypes에 대한 데이터가 반환된다는 것을 보여줍니다.
을 오! 굉장해. 나는 이것이 쉬운 일인지 모른다. 이것은 나의 테스트 케이스에서 트릭을했다. 이제 전체 프로젝트에서 구현하십시오. 감사! (오, ShouldSerialize 메서드를 bool 형식으로 선언해야했습니다.) – DeadZone