Ich bin dabei, auf die gleiche Weise eine API zu erstellen Hanselman hat gezeigt, dass dies für Stackoverflow möglich ist . Ich habe ein paar EntityObject
Entity Framework generierte Klassen und ein DataService
thingy um sie zu Atom und JSON zu serialisieren. Ich möchte einige generierte Eigenschaften über den Webservice verfügbar machen. Denken Sie FullName wie durch das Verketten von First- und LastName generiert (aber einige sind komplexer). Ich habe diese zu einer partiellen Klasse hinzugefügt, die das Entity Framework Entity Framework erweitert und ihnen das [DataMember]
-Attribut gegeben hat, aber sie erscheinen nicht im Service. Hier ist ein Beispielattribut ( set
wird für ein gutes Maß eingefügt, funktioniert auch ohne es nicht):
Nach diesen Diskussionen in MSDN-Foren ist dies ein bekanntes Problem. Hat jemand gute Workarounds gefunden oder hat jemand Vorschläge für Alternativen?
Ich hatte das gleiche Problem, wenn Entity-Objekte über einen WCF-Service angezeigt wurden, und habe die Problemumgehung verwendet, die Sie mit hier , um den Eigenschaften das folgende Attribut hinzuzufügen, damit sie serialisiert werden.
%Vor%Ich habe keine "schöneren" Wege gefunden, dies zum Laufen zu bringen.
Wenn Sie zum Beispiel eine Entität namens "Lehrer" mit Feldern "Titel", "Vorname" und "Nachname" angeben, können Sie eine teilweise Klasse für den Lehrer hinzufügen, beispielsweise:
%Vor%Dann, solange Ihre WCF-Dienstschnittstelle diese Klasse referenziert, werden die zusätzlichen Eigenschaften serialisiert und sind für die Benutzer des Dienstes verfügbar.
z.B.
%Vor%Tags und Links wcf c# entity-framework wcf-data-services