Freigeben über


Konfigurieren des EntityDataSource-Steuerelements

Aktualisiert: November 2007

Das EntityDataSource-Steuerelement vereinfacht die Bindung von Daten, die durch ein Entity Data Model(EDM) definiert werden, an Steuerelemente in einer ASP.NET-Webanwendung, indem die Object Services-Komponenten des ADO.NET Entity Framework genutzt werden. Dadurch kann das Steuerelement Objektabfragen erstellen und ausführen und Steuerelemente an die zurückgegebenen Objekte binden, bei denen es sich um Instanzen von Entitätstypen handelt, die im EDM definiert sind. Weitere Informationen finden Sie unter Übersicht über Object Services (Entity Framework).

Sie müssen die Eigenschaften des EntityDataSource-Steuerelements konfigurieren, um eine Verbindung zum EDM herstellen und die korrekten Entitätstypen zurückgeben zu können. Wenn Sie die ConnectionString-Eigenschaft und die DefaultContainerName-Eigenschaft festlegen, kann das EntityDataSource-Steuerelement den ObjectContext erstellen, den es zum Ausführen von Objektanfragen verwendet. Wenn Sie die EntitySetName-Eigenschaft und die EntityTypeFilter-Eigenschaft festlegen, definieren Sie den Typ der ObjectQuery<T>, die das EntityDataSource-Steuerelement erstellt.

Hinweis:

Um das EntityDataSource-Steuerelement zu verwenden, müssen Sie in Ihrer Anwendung einen Verweis auf die DLL hinzufügen, die das EDM-Modell und Zuordnungsdateien und die -Klassen enthält, die den ObjectContext und Entitätstypen darstellen.

Verbindungszeichenfolge

Sie können die ConnectionString-Eigenschaft des EntityDataSource-Steuerelements aus einer benannten EDM-Verbindungszeichenfolge initialisieren, die im connectionStrings-Element der Anwendungskonfigurationsdatei gespeichert ist. Wenn Sie das EDM mit dem Entity Data Model-Assistenten erstellen, erstellen Sie eine benannte EDM-Verbindung in der Anwendungskonfigurationsdatei. Sie können diese Verbindung dann als Option im Assistenten zum Konfigurieren von Datenquellen des EntityDataSource-Designers anzeigen. Weitere Informationen hierzu finden Sie unter Assistent zum Konfigurieren von Datenquellen (EntityDataSource-Steuerelement).

Objektkontext

In Object Services stellt ein typisierter ObjectContext den Entitätscontainer des Konzeptmodells dar. Die ObjectContext-Klasse ist die primäre Klasse für die Interaktion mit Daten, die durch ein EDM definiert wurden. Diese Daten liegen in Form von Objekten vor, die Instanzen von Entitätstypen sind. Ein typisierter ObjectContext kapselt eine Verbindung zur Datenbank, Metadaten, die das Modell beschreiben, und ein ObjectStateManager-Objekt, das Objekte während Erstellungs-, Aktualisierungs- und Löschvorgängen verfolgt. Die ContextTypeName-Eigenschaft des EntityDataSource-Steuerelements ist eine Zeichenfolge, die den vollständig qualifizierten Typnamen des typisierten ObjectContext angibt, den das EntityDataSource-Steuerelement verwendet. Wenn die ContextTypeName-Eigenschaft nicht angegeben ist, müssen Sie die DefaultContainerName-Eigenschaft und die ConnectionString-Eigenschaft für das EntityDataSource-Steuerelement festlegen, um den ObjectContext zu erstellen. Sie können über die ContextType-Eigenschaft auf den ObjectContext zugreifen, den das EntityDataSource-Steuerelement verwendet. Weitere Informationen hierzu finden Sie unter Lebenszyklusverwaltung für Objektkontexte (EntityDataSource).

Entitätstypen

Im EDM stellt eine Entitätenmenge einen logischen Container für Entitätstypen dar, die im konzeptionellen Schema definiert sind. Sie können die Entitätenmenge des Objekttyps angeben, auf den das EntityDataSource-Steuerelement über den EntitySetName zugreift. Der Wert der EntitySetName-Eigenschaft ist die Standard-SELECT-Anweisung, die das Steuerelement verwendet. Die Einstellung ist nicht erforderlich, wenn die Abfrage als Entity SQL-Ausdruck angegeben wird, der an die CommandText-Eigenschaft übergeben wird. Weitere Informationen hierzu finden Sie unter Benutzerdefinierter Befehlstext (EntityDataSource).

Wenn das EntityDataSource-Steuerelement einen bestimmten abgeleiteten Typ zurückgeben muss, müssen Sie auch den Namen dieses abgeleiteten Typs in der EntityTypeFilter-Eigenschaft angeben. Wenn die EntitySetName-Eigenschaft eine Entitätenmenge angibt, die polymorphe Ergebnisse generieren kann, muss die EntityTypeFilter-Eigenschaft in der Lage sein, Daten zu bearbeiten. Das Festlegen der EntityTypeFilter-Eigenschaft hat dieselben Auswirkungen wie das Anwenden der OfType<TResultType>-Methode auf ObjectQuery<T>. Wenn die Datenbindung schreibgeschützt ist, ist die EntityTypeFilter-Eigenschaft nicht erforderlich. In diesem Fall haben die Eigenschaften des von der Abfrage zurückgegebenen Objekts den Standardentitätstyp für dieEntitätenmenge.

Siehe auch

Konzepte

EntityDataSource-Designer

Assistent zum Konfigurieren von Datenquellen (EntityDataSource-Steuerelement)

Benutzerdefinierter Befehlstext (EntityDataSource)

Weitere Ressourcen

Objektabfragen (Entity Framework)