Share via


Webdienste und das Entity Data Model (Anwendungsszenarios)

Das Entitätsdatenmodell (EDM) stellt eine konzeptionelle Abstraktionsebene über der Datenquelle bereit. Object Services materialisiert in der konzeptionellen Ebene definierte Entitäten in CLR-Objekte, die in Clientanwendungen, wie Windows Forms-Anwendungen und ASP.NET-Anwendungen, verwendet werden können. Entity Framework unterstützt die Serialisierung von Entitätsobjekten in Formate, die Remoteaustausch und nachrichtenbasierten Austausch von Entitätsobjekten ermöglichen, wie Webdienste und Windows Communication Foundation (WCF). Objekte können mittels binärer Serialisierung, XML-Serialisierung und WCF-Vertragsserialisierung für den Transport über einen binären Stream oder nachrichtenbasierte Protokolle serialisiert werden. Weitere Informationen finden Sie unter Serialisieren von Objekten (Entity Framework). Objekte können auch über eine Nachricht oder einen Stream empfangen, deserialisiert und einem Objektkontext angefügt werden. Weitere Informationen finden Sie unter Anfügen von Objekten (Entity Framework).

ADO.NET Data Services ermöglicht weiterhin die Bereitstellung dynamischen Zugriffs auf EDM-Daten im XML-Format, das von Anwendungen verwendet werden kann. Auf diese Entitätsdaten wird mithilfe von standardmäßigen Representational State Transfer (REST) HTTP-Aktionen wie GET, PUT und POST zugegriffen. Weitere Informationen finden Sie unter ADO.NET Data Services-Framework.

Beim Erstellen von Webdiensten oder WCF-Diensten, die Entity Framework verwenden, sollte Folgendes beachtet werden:

  • Die Serialisierung des gesamten Diagramms wird für die binäre Serialisierung und die DataContract-Serialisierung unterstützt. Die XML-Serialisierung serialisiert keine verbundenen Objekte.

  • Objekte werden stets in den Detached-Status deserialisiert. Das Objekt kann einem ObjectContext angefügt oder hinzugefügt werden, oder es können Eigenschaftsänderungen am ursprünglichen Objekt vorgenommen werden. Weitere Informationen finden Sie unter Anfügen von Objekten (Entity Framework).

  • Es wird die Verwendung zustandsloser Dienste empfohlen. Die Dienste sollten so entworfen werden, dass ein Objektkontext nur für die Dauer einer Anforderung oder Antwort erhalten wird. Das Nachrichtenaustauschmuster sollte genügend Informationen für Änderungen enthalten, ohne dass Objekte dauerhaft gespeichert werden müssen oder die Datenquelle zum Abrufen des ursprünglichen Objekts erneut abgefragt werden muss. Beispielsweise sollte ein Dienst, der einem Client die Aktualisierung von Objekten ermöglicht, erfordern, dass das aktualisierte Objekt gemeinsam mit dem ursprünglichen Objekt zurückgegeben wird. Damit können Änderungen durch den Webdienst mithilfe der ApplyPropertyChanges-Methode am ursprünglichen Objekt vorgenommen werden, ohne dass das ursprüngliche Objekt von der Datenbank abgerufen oder dauerhaft gespeichert werden muss. Weitere Informationen finden Sie unter Gewusst wie: Übernehmen von an einem getrennten Objekt vorgenommenen Änderungen (Entity Framework).

Siehe auch

Konzepte

Übersicht über Object Services (Entity Framework)