Klassenkonflikt
-
Donnerstag, 23. August 2012 17:05
Hallo! Ich habe eine Klasse ClassA und zwei Services (ServiceA und ServiceB), die diese Klasse dem Client zur Verfügung stellen. Der ServiceA ist ein "allgemeiner" Service (der aktuelle Daten liefert), der ServiceB liefert nur Stammdaten aus der Datenbank. So liefert ServiceB z.B. alle Fahrzeugtypen, der ServiceA den bevozugten Fahrzeugtyp.
Die Clientanwendung nutzt beide Services. Jetzt stellt sich aber ein Problem dar, denn der Fahrzeugtyp aus dem ServiceA (ServiceA.Fahrzeugtyp) wird nicht automatsich in den Fahrzeugtyp aus dem ServiceB (ServiceB.Fahrzeugtyp konvertiert.
Wie kann ich erreichen, dass immer "DER" Fahrzeugtyp benutzt wird?
Danke für die Hilfe!
Alle Antworten
-
Donnerstag, 23. August 2012 17:32Hi,auch wenn Du Klassen in unterschiedlichen Scopes mit gleichem Namen versiehst, sind es immer unterschiedliche Typen, die nichts gemeinsam haben, außer vielleicht eine von Dir hineininterpretierte Beziehung.Wenn Du dabei bleibst, dass du unterschiedliche (ggf. gleich bezeichnete Typen) nutzen willst, musst Du einen Mapper selbst schreiben, der die von Dir gewünschte Logik der Beziehung implementiert. Dazu ist es günstig, wenn eine eindeutige Identifikation als Beziehungsschlüssel existiert, z.B. eine GUID (als ID).--
Viele Gruesse
Peter -
Donnerstag, 23. August 2012 17:38
Hallo! Danke für die Antwort. Ist klar. Aber dennoch muss ich noch einmal fragen: Eine Empfehlung lautet, dass ein Service nicht mehr als (sagen wir mal) 10 Methoden anbieten soll (Quelle "Programming WCF Services"). Das bedeutet, dass man dann einen zweiten Service braucht. Und dann hat man das Problem... Oder sehe ich das falsch?
Gruesse!
-
Donnerstag, 23. August 2012 17:47
Hallo!
Würde etwas [ServiceContract(Namespace="MyNamespace")] helfen? Dann würden ja alle Klassen in dem selben Naespace liegen.Danke für die Antwort!

