2011-12-15 2 views
0

WCF 서비스의 일부인 Datamembers와 Product DataContract가 있습니다. 또한 DataContractSerializer를 사용하여이 제품 Datacontract를 직렬화하고 응용 프로그램에 저장합니다.WCF에 의해 생성 된 WSDL에서 스키마 요소 제거

이제 WSDL (서비스 메타 데이터)이 생성 될 때 Product Datacontract의 Datamembers 중 일부를 제거하려고합니다. 그러나, 나는 제품 Datacontract의 모든 Datamembers가 내 애플 리케이션 내에서 개체를 serialise 할 때 사용할 수 있기를 바랍니다.

실제로 내가 원하는 것은 WSDL 생성 프로세스를 잡고 WSDL에 삽입되는 필수 Datamembers를 제거하는 것입니다. 도움이되지 않습니다 정보를 포함하지 않도록

감사 Mofolo

답변

2

해킹 WSDL. 서비스는 클라이언트에 전달할 때와 클라이언트에서 형식을 역 직렬화 할 때 형식의 전체 serialization을 계속 사용합니다. WSDL과 WCF를 해킹하는 대신 WCF 서비스 용 DTO를 사용하십시오. = 정말로 클라이언트와 교환하려는 속성 만 포함하는 새로운 유형 집합입니다. 마스터 객체를 DTO로 변환하거나 그 반대로 변환합니다 (사용자 정의 변환기를 만들거나 AutoMapper과 같은 일부 프레임 워크를 사용할 수 있음). 이것이 최선의 방법입니다.