Tipps und Tricks rund um .NET und Visual Studio

WCF Einfluss auf den Mengentyp im Proxy
Kommentare

Dr. Holger Schwichtenberg (MVP) und FH-Prof. Manfred Steyer teilen in der Kolumne „.NETversum“ ihr Expertenwissen rund um .NET-Tools und WPF mit.

Bei der Erstellung von Client-Proxys für Web Services werden Sie feststellen, dass einige generische Mengenklassen wie List und SortedDictionary nicht als solche erhalten bleiben. Aus List wird ein Array dieses Typs und aus dem SortedDictionary wird ein Dictionary. WCF versucht bei der Erstellung des WSDL möglichst allgemeingültig (d. h. plattformneutral) zu bleiben. Eine List wird im WSDL zu:

  

Man kann beim Erstellen eines Proxies mit Add Service Reference unter „Advanced“ die Mengentypen für einfache Listen und Listen mit Name-Wert-Paaren einstellen. Man kann dies auch jederzeit später noch über „Configure Service Reference“ ändern – eventuell schon vorhandener Code muss dann aber ggf. geändert werden (Abb. 1). Auch an den Kommandozeilen kann man dies erledigen mit svcutil.exe http://… /collectionType:System.Collections.Generic.List’1.

Bei Mengentypen wie Stack bleibt (zumindest wenn der Client auch .NET ist) die Typidentität aber erhalten. In diesem Fall steuert WCF dies über eine Annotation in WSDL:












  

Welche Collection-Typen wie behandelt werden kann man nachlesen in Collection Types in Data Contracts.

Abb. 1: Service Reference Settings
Abb. 1: Service Reference Settings
Dr. Holger Schwichtenberg (MVP) und FH-Prof. Manfred Steyer arbeiten bei www.IT-Visions.de als Softwarearchitekten, Berater und Trainer für .NET-Technologien. Dabei unterstützen sie zahlreiche Unternehmen beim Einsatz von .NET und entwickeln selbst in größeren Projekten. Sie haben zahlreiche Fachbücher geschrieben und gehören seit vielen Jahren zu den Hauptsprechern auf der BASTA!. Manfred Steyer ist zudem für den Fachbereich „Software Engineering“ der Studienrichtung „IT und Wirtschaftsinformatik“ an der FH CAMPUS 02 in Graz verantwortlich. Dr. Holger Schwichtenberg unterrichtet in Lehraufträgen an den Fachhochschulen Münster und Graz.
Unsere Redaktion empfiehlt:

Relevante Beiträge

Meinungen zu diesem Beitrag

X
- Gib Deinen Standort ein -
- or -