다음을 통해 공유


이식 가능한 하위 집합 프로젝트에서 서비스 참조 추가

이식 가능한 하위 집합 프로젝트를 사용하면 .NET 어셈블리 프로그래머가 여러 .NET 구현(데스크톱, Silverlight, Windows Phone 및 Xbox)을 지원하면서 단일 소스 트리를 유지하고 시스템을 빌드할 수 있습니다. 이식 가능한 하위 집합 프로젝트는 모든 .NET 구현에서 사용할 수 있는 .NET 어셈블리인 이식 가능한 라이브러리만 참조합니다.

서비스 참조 세부 정보 추가

이식 가능한 하위 집합 프로젝트에서 서비스 참조를 추가할 때 다음 제한 사항이 적용됩니다.

  • 의 경우 XmlSerializer리터럴 인코딩만 허용됩니다. SOAP 인코딩은 가져오는 동안 오류를 생성합니다.

  • 시나리오를 사용하는 DataContractSerializer 서비스의 경우 재사용된 형식이 이식 가능한 하위 집합에서만 제공되도록 데이터 계약 서로게이트가 제공됩니다.

  • 이식 가능한 라이브러리에서 지원되지 않는 바인딩을 사용하는 엔드포인트(트랜잭션 흐름, 신뢰할 수 있는 세션 또는 MTOM 인코딩 및 동등한 사용자 지정 바인딩을 제외한 BasicHttpBindingWSHttpBinding 모든 바인딩)는 무시됩니다.

  • 가져오기 전에 모든 작업의 모든 메시지 설명에서 메시지 헤더가 삭제됩니다.

  • 이식할 수 없는 특성DesignerCategoryAttributeSerializableAttribute이며 TransactionFlowAttribute 생성된 클라이언트 프록시 코드에서 제거됩니다.

  • 이식할 수 없는 속성 ProtectionLevel, SessionMode, IsInitiating, IsTerminating이 ServiceContractAttribute, OperationContractAttribute, FaultContractAttribute에서 제거되었습니다.

  • 모든 서비스 작업은 클라이언트 프록시에서 비동기 작업으로 생성됩니다.

  • 이식 가능하지 않은 형식을 사용하는 생성된 클라이언트 생성자가 제거됩니다.

  • CookieContainer 인스턴스는 생성된 클라이언트에 노출됩니다.

  • 코드 생성기의 어셈블리 및 버전을 식별하는 주석이 파일 맨 위에 삽입됩니다.// This code was auto-generated by Microsoft.VisualStudio.Portable.AddServiceReference, version 1.0.0.0

  • 인터페이스는 ISerializable 지원되지 않습니다.

  • Net.Tcp 및 PollingDuplex 바인딩은 지원되지 않습니다.

  • 오류에는 DataContractSerializer 항상 사용됩니다.

  • IsWrapped 는 이식 가능한 하위 집합 프로젝트에서 지원되지 않습니다.

참고하십시오