Hinzufügen eines Dienstverweises in einem Projekt für die portable TeilmengeAdd Service Reference in a Portable Subset Project

Projekte für Portable Teilmengen ermöglichen es Programmierern .NET-Assemblys, eine einzelne Quellstruktur zu verwalten und das System mit Unterstützung mehrerer .NET-Implementierungen (Desktop, Silverlight, Windows Phone und XBOX) aufzubauen.Portable subset projects enable .NET assembly programmers to maintain a single source tree and build system while still supporting multiple .NET implementations (desktop, Silverlight, Windows Phone, and XBOX). Projekte für Portable Teilmengen verweisen nur portable .NET-Bibliotheken, die einer .NET Framework-Assembly sind, die für die Implementierung einer .NET verwendet werden kann.Portable subset projects only reference .NET portable libraries which are a .NET framework assembly that can be used on any .NET implementation.

Details zu "Dienstverweis hinzufügen"Add Service Reference Details

Wenn Sie einem Projekt für portable Teilmengen einen Dienstverweis hinzufügen, werden die folgenden Einschränkungen erzwungen:When adding a service reference in a portable subset project the following restrictions are enforced:

  1. Für XmlSerializer sind nur literale Codierungen zulässig.For XmlSerializer, only literal encodings are allowed. SOAP-Codierungen generieren während des Imports einen Fehler.SOAP encodings generate an error during import.

  2. Bei Diensten, die DataContractSerializer-Szenarien verwenden, wird ein Datenvertrag-Ersatzzeichen bereitgestellt, um sicherzustellen, dass wiederverwendete Typen nur aus der portablen Teilmenge stammen.For services that use DataContractSerializer scenarios, a data contract surrogate is provided to ensure that reused types come only from the portable subset.

  3. Endpunkte, die auf Bindungen basieren, die in portablen Bibliotheken nicht unterstützt werden (alle Bindungen außer BasicHttpBinding, WSHttpBinding ohne Transaktionsfluss, zuverlässige Sitzungen oder MTOM-Codierung und die entsprechenden benutzerdefinierten Bindungen), werden ignoriert.Endpoints which rely on bindings not supported in portable libraries (all bindings except BasicHttpBinding, WSHttpBinding without transaction flow, reliable sessions, or MTOM encoding, and equivalent custom bindings) are ignored.

  4. Nachrichtenheader werden vor dem Import aus allen Nachrichtenbeschreibungen in sämtlichen Vorgängen gelöscht.Message headers are deleted from all message descriptions in all operations before import.

  5. Die nicht portablen Attribute DesignerCategoryAttribute, SerializableAttribute und TransactionFlowAttribute werden aus generiertem Clientproxycode entfernt.Non-portable attributes DesignerCategoryAttribute, SerializableAttribute, and TransactionFlowAttribute are removed from generated client proxy code.

  6. Die nicht portablen Eigenschaften ProtectionLevelServiceContractAttribute, SessionModeOperationContractAttribute, IsInitiatingFaultContractAttribute und IsTerminating werden aus , und entfernt.Non-portable properties ProtectionLevel, SessionMode, IsInitiating, IsTerminating are removed from ServiceContractAttribute, OperationContractAttribute, and FaultContractAttribute.

  7. Alle Dienstvorgänge werden auf dem Clientproxy als asynchrone Vorgänge generiert.All service operations are generated as asynchronous operations on the client proxy.

  8. Generierte Clientkonstruktoren, die nicht portable Typen verwenden, werden entfernt.Generated client constructors which use non-portable types are removed.

  9. Eine CookieContainer-Instanz wird für den generierten Client verfügbar gemacht.A CookieContainer instance is exposed on the generated client.

  10. Am Anfang der Datei wird ein Kommentar eingefügt, der die Assembly und die Version des Code-Generators identifiziert: // This code was auto-generated by Microsoft.VisualStudio.Portable.AddServiceReference, version 1.0.0.0A comment is inserted at the top of the file identifying the assembly and version of the code generator:// This code was auto-generated by Microsoft.VisualStudio.Portable.AddServiceReference, version 1.0.0.0

  11. Die ISerializable-Schnittstelle wird nicht unterstützt.The ISerializable interface is not supported.

  12. Net.Tcp- und PollingDuplex-Bindungen werden nicht unterstützt.Net.Tcp and PollingDuplex bindings are not supported

  13. DataContractSerializer wird immer bei Fehlern verwendet.The DataContractSerializer will always be used for faults.

  14. IsWrapped wird in Projekten für portable Teilmengen nicht unterstützt.IsWrapped is not supported in portable subset projects.

Siehe auchSee Also

Zugreifen auf Dienste mithilfe eines WCF-ClientsAccessing Services Using a WCF Client
Portable KlassenbibliothekPortable Class Library