(0) exportieren Drucken
Alle erweitern

Übersicht über ASP.NET Dynamic Data

Mit ASP.NET Dynamic Data können Sie erweiterbare datengesteuerte Webanwendungen durch Ableiten der Darstellung und des Verhaltens von Datenentitäten vom Datenbankschema zur Laufzeit und durch Ableiten des Verhaltens der Benutzeroberfläche davon erstellen.

Dynamic Data unterstützt den Gerüstbau, eine Möglichkeit zum automatischen Generieren von Webseiten für jede Tabelle in der Datenbank. Mit dem Gerüstbau können Sie eine funktionale Website zum Anzeigen und Bearbeiten von Daten auf Grundlage des Schemas der Daten erstellen. Gerüstelemente können ganz einfach angepasst oder neu erstellt werden, um das Standardverhalten zu überschreiben.

Sie können auch dynamisches Verhalten in vorhandenen oder neuen Webanwendungen aktivieren, ohne den Gerüstbau zu verwenden. In diesem Fall geben Sie an, wie und wann Dynamic Data Benutzeroberflächenelemente von der Datenquelle ableiten soll, ohne Gerüstbau für die gesamte Website zu verwenden.

Dieses Thema enthält folgende Abschnitte:

Dynamic Data ruft Datenschemainformationen oder Metadaten von einem Datenmodell ab, das Datenbankentitäten als Common Language Runtime (CLR)-Typen darstellt. Die folgende Abbildung zeigt die Dynamic Data-Clientarchitektur. Die Felder mit gestrichelter Linie stellen Technologien dar, die in der CLR definiert sind, aber von Dynamic Data verwendet werden.

Dynamic Data-Architektur

Dynamic Data-Architektur

Wie die Abbildung zeigt, umfasst die Dynamic Data-Architektur die folgenden Schichten:

  • Darstellungsschicht, die Elemente enthält, die zum Erstellen der Benutzeroberfläche zum Anzeigen und Bearbeiten von Datenentitäten verwendet werden.

  • Datenebene, die das Datenmodell enthält, das die Datenbankentitäten als CLR-Typen darstellt.

  • Datenquellenzuordnungsebene, die Elemente enthält, die Teil der CLR sind, aber von Dynamic Data verwendet werden. Bei diesen Elementen handelt es sich um Technologien wie LINQ to SQL und ADO.NET Entity Framework, die zum Generieren von Datenmodellen verwendet werden.

Dieser Abschnitt bietet eine Übersicht über die Dynamic Data-Elemente, die zum Erstellen der Benutzeroberfläche zum Anzeigen und Bearbeiten von Datenentitäten verwendet werden Weitere Informationen finden Sie unter Gerüstbau für ASP.NET Dynamic Data.

Seitenvorlagen

Seitenvorlagen sind Webseiten, die Daten von beliebigen Tabelle in der Datenbank rendern. Dynamic Data umfasst Seitenvorlagen für verschiedene Datenansichten, darunter Auflisten einer Tabelle (Listenansicht), Anzeigen von Master-/Detailtabellen (Detailansicht) und Bearbeiten von Daten (Bearbeitungsansicht). Standardmäßig verwendet Dynamic Data nur eine Seitenvorlage für Listenansichten. Wenn Sie ein Dynamic Data-Webprojekt erstellen, fügt Visual Studio dem Projekt den Ordner "DynamicData\PageTemplates" hinzu. Dieser Ordner enthält die Standardseitenvorlagen. Sie können die Standardvorlagen ändern oder neue Seitenvorlagen erstellen, um anzugeben, wie Tabellen gerendert werden.

Entitätsvorlagen

Mit Entitätsvorlagen können Sie die Benutzeroberfläche für eine ganze Datenentität anpassen, z. B. eine Zeile oder eine Tabelle. Dies bietet eine höhere Flexibilität als beim Anpassen einzelner Datenfelder und ist hilfreich, wenn Sie eine benutzerdefinierte Benutzeroberfläche erstellen möchten, um sie auf Standardseitenvorlagen oder benutzerdefinierte Seitenvorlagen anzuwenden.

Wenn Sie ein Dynamic Data-Webprojekt erstellen, fügt Visual Studio dem Projekt den Ordner "DynamicData\EntityTemplates" hinzu. Dieser Ordner enthält die Standardentitätsvorlagen. Es gibt Vorlagen für Anzeige-, Bearbeitungs- und Einfügevorgänge. In Standardentitätsvorlagen werden Daten in zwei Spalten angezeigt, und es wird eine Bezeichnung für den Feldnamen und ein entsprechendes Steuerelement für den Feldwert verwendet. Sie können die Standardentitätsvorlagen ändern, um die Darstellung und das Verhalten von Datenzeilen für die ganze Site zu ändern.

Entitätsvorlagen sind in den Seitenvorlagen "Details.aspx", "Insert.aspx" und "Update.aspx" enthalten und können in benutzerdefinierten Seiten verwendet werden. Entitätsvorlagen hingegen verwenden Feldvorlagen zum Rendern der eigentlichen Daten.

Weitere Informationen zum Verwenden von Entitätsvorlagen finden Sie in den verwandten Themen im Abschnitt Dynamic Data-Szenarios.

Feldvorlagen

Feldvorlagen sind Benutzersteuerelemente, die die Benutzeroberfläche für einzelne Datenfelder rendern. Standardmäßig wählt Dynamic Data eine Feldvorlage basierend auf dem Datentyp des Felds aus, das angezeigt wird. Um beispielsweise boolesche Daten anzuzeigen, verwendet Dynamic Data die boolesche Feldvorlage, um Textdaten anzuzeigen, verwendet Dynamic Data eine Textfeldvorlage, usw. Es gibt in der Regel eine Feldvorlage zur Anzeige von Daten, und eine andere Vorlage, in die Benutzer Feldwerte eingeben oder diese bearbeiten können.

Wenn Sie ein Dynamic Data-Webprojekt erstellen, fügt Visual Studio dem Projekt den Ordner DynamicData\FieldTemplates hinzu. Dieser Ordner enthält die Standardfeldvorlagen. Sie können die Standardfeldvorlagen ändern oder neue Feldvorlagen erstellen, um anzugeben, wie bestimmte Datenfelder gerendert werden sollen.

Filtervorlagen

Filtervorlagen sind Benutzersteuerelemente, die die Benutzeroberfläche für Datenfilterung rendern, mit der der Benutzer die anzuzeigenden Tabellenzeilen auf Grundlage eines Spaltenwerts auswählen kann. Sie können z. B. alle Zeilen anzeigen, die eine bestimmte Kategorie enthalten. Standardmäßig stellt Dynamic Data Vorlagen für booleschen Werte, Fremdschlüssel und Enumerationsfilter bereit.

Mithilfe von Dynamic Data können Sie das Seitenmarkup verwenden, um die Benutzeroberfläche für Datenfilterung für eine Spalte zu erstellen. Wenn Sie ein Dynamic Data-Webprojekt erstellen, fügt Visual Studio dem Projekt den Ordner "DynamicData\FilterTemplates" hinzu. Dieser Ordner enthält die Standardfiltervorlagen.

Wenn für diesen Spaltentyp keine Filtervorlage vorhanden ist, können Sie eine benutzerdefinierte Filtervorlage erstellen und Dynamic Data anweisen, diese Filtervorlage zum Erstellen der Benutzeroberfläche zu verwenden. Sie können das Seitenmarkup auch so erstellen, dass Dynamic Data die Benutzeroberfläche für alle Spaltentypen automatisch erstellt, für die eine Standardfiltervorlage vorhanden ist.

ASP.NET Dynamic unterstützt LINQ to SQL- und ADO.NET Entity Framework-Datenmodelle. Dynamic Data verwendet diese Typen zum Abfragen der Datenbank sowie zum Erstellen, Lesen, Aktualisieren und Löschen von Daten (d. h. zum Durchführen CRUD-Vorgängen (Create, Read, Update, Delete; Erstellen, Lesen, Aktualisieren, Löschen). Datenmodelle bieten eine einfache Möglichkeit zum Integrieren von benutzerdefinierten Datenvalidierungs- und Geschäftslogikregeln.

Dynamic Data extrahiert Informationen zum Datenmodell, z. B. Datenfeldeigenschaften, zur Laufzeit automatisch. Aus diesen Informationen leitet Dynamic Data ab, wie die Benutzeroberfläche zum Anzeigen und Bearbeiten von Daten erstellt werden soll.

Wenn Sie in Visual Studio 2010 ein neues Projekt erstellen, können Sie den Typ des Modells auswählen, das vom Projekt verwendet wird. Der Dynamic Data-Gerüstbau kann nur einen der Datenmodelltypen im gleichen Projekt unterstützen.

Dynamic Data unterstützt die folgenden Entwurfsoptionen:

  • Erstellen einer Website mit Gerüstbau Sie können eine grundlegende Webanwendung erstellen, die ASP.NET Dynamic Data verwendet, die wenig oder gar keinen Code erfordert. Wenn Gerüstbau aktiviert ist, analysiert ASP.NET das Datenmodell und generiert Webseiten dynamisch auf Grundlage der Metadateninformationen. Diese automatisch generierten Webseiten stellen CRUD-Funktionen für jede Tabelle bereit. Weitere Informationen finden Sie unter Exemplarische Vorgehensweise: Erstellen einer neuen Dynamic Data-Website mithilfe des Gerüstbaus.

  • Aktivieren Sie dynamisches Verhalten für einzelnen datengebundene Steuerelemente (z. B. das GridView-Steuerelemente und das ListView-Steuerelement) in einer vorhandenen ASP.NET-Website. Auf diese Weise können Sie Dynamic Data-Funktionen wie Laufzeitdatenfeldvalidierung, vordefinierte Seiten für CRUD-Vorgänge und Datenfeldanpassung verwenden. Weitere Informationen finden Sie unter Exemplarische Vorgehensweise: Aktivieren von Dynamic Data in datengebundenen ASP.NET-Steuerelementen.

  • Fügen Sie einer vorhandenen (oder neuen) ASP.NET-Website Dynamic Data-Funktionen hinzu. Sie können einer vorhandenen Website Dynamic Data-Funktionen und Gerüstelemente hinzufügen. Hier aktivieren Sie Dynamic Data nicht für bestimmte datengebundene Steuerelemente; stattdessen importieren Sie Gerüstelemente. Dieser Ansatz gibt Ihnen mehr Kontrolle über die Anpassung als das Aktivieren von dynamischem Verhalten für einzelne Steuerelemente. Weitere Informationen finden Sie unter Exemplarische Vorgehensweise: Erstellen einer Website, die Dynamic Data verwendet.

Weitere Informationen über Dynamic Data-Szenarios finden Sie unter Einstieg in ASP.NET Dynamic Data.

Anpassen von Dynamic Data

Eine wichtige Funktion von Dynamic Data ist die Anpassung. Anpassungsoptionen können in den folgenden Kategorien gruppiert werden:

  • Anpassen von allgemeinem Verhalten (Darstellungsschicht). Sie können ändern, wie Dynamic Data Aufgaben durchführt, die nicht von einem bestimmten Datenbankschema abhängen. Sie nehmen diese Änderungen in der Darstellungsschicht vor, indem Sie die Standardvorlagen ändern oder benutzerdefinierte Vorlagen zur Anzeige in bzw. zur Interaktion mit der Datenbank erstellen. Sie können dann diese Änderungen in einem beliebigen Dynamic Data-Projekt verwenden. Weitere Informationen finden Sie unter Anpassung der ASP.NET Dynamic Data-Darstellungsebene.

  • Anpassen von schemaspezifischem Verhalten. Sie können das Verhalten dynamischer Daten für einzelne Tabellen oder Datenfelder auf Grundlage des Datenmodells oder des Datenbankschemas anpassen. In diesem Fall ist die Anpassung für die Instanz des Datenmodells spezifisch. Sie können beispielsweise die Benutzeroberfläche für ein einzelnes Datenfeld anpassen oder eine benutzerdefinierte Seitenvorlage erstellen bzw. Entitätsvorlagen verwenden, um eine einzelne Tabelle zu rendern. Sie können die Darstellung und das Verhalten einzelner Datenfelder mit den System.ComponentModel.DataAnnotations-Attributen ändern. Sie können auch das Verhalten einer Anwendung anpassen, mit der Sie eine benutzerdefinierte Validierung erstellen und Tabellen oder Felder in dem Datenmodell an spezifische Vorlagen binden können. Weitere Informationen finden Sie unter ASP.NET Dynamic Data-Ebenenanpassung .

In der folgenden Tabelle sind Dynamic Data-Szenarien sowie Themen aufgeführt, in denen beschrieben wird, wie die Szenarien umgesetzt werden können.

Szenario

Thema

Beschreibung und Beispiele

Aktivieren von dynamischem Verhalten in datengebundenen Steuerelementen in einer vorhandenen Website

Exemplarische Vorgehensweise: Aktivieren von Dynamic Data in datengebundenen ASP.NET-Steuerelementen

Dieser Ansatz ist hilfreich, wenn Sie eine vorhandene Website haben und Sie eine Dynamic Data-Validierung und Vorlagen mit wenig oder ganz ohne Code hinzufügen möchten.

Zu diesem Thema steht ein Visual Studio-Projekt mit Quellcode zur Verfügung: Aktivieren von Dynamic Data (möglicherweise in englischer Sprache).

Anpassen der Darstellung und des Verhalten einer einzelnen Tabelle

Gewusst wie: Anpassen der Darstellung und des Verhaltens von Datenfeldern in einem datengebundenen Steuerelement

Mit dieser Methode können Sie eine einzelne Tabelle anpassen, indem Sie eine benutzerdefinierte Seite für eine spezifische Tabelle erstellen. Dies ist eine schemaspezifische Anpassung.

Anpassen der Darstellung und des Verhalten eines einzelnen Datenfelds

Exemplarische Vorgehensweise: Anpassen der Darstellung und des Verhaltens von Datenfeldern im Datenmodell

Mit dieser Methode können Sie anpassen, wie ein bestimmtes Feld in dem Datenmodell gerendert wird. Dies ist eine schemaspezifische Anpassung, in der Sie eine benutzerdefinierte Feldvorlage erstellen.

Zeigen Sie ein Video an, in dem diese Funktion veranschaulicht wird: Anpassen der Darstellung und des Verhaltens von Datenfeldern (möglicherweise in englischer Sprache).

Anpassen der Darstellung und des Verhalten für einen Datenfeldtyp

Gewusst wie: Anpassen von ASP.NET Dynamic Data-Standardfeldvorlagen

Mit dieser Methode können Sie die Benutzeroberfläche eines Datenfeldtyps in der ganzen Anwendung anpassen. Dies ist eine allgemeine Verhaltensanpassung in der Darstellungsschicht, in der Sie die Standardfeldvorlagen anpassen.

Zeigen Sie ein Video an, in dem diese Funktion veranschaulicht wird: Anpassen von Datenfeldvorlagen (möglicherweise in englischer Sprache).

Anpassen der Darstellung und des Verhalten für einen nicht primitiven Datenfeldtyp

Gewusst wie: Anpassen der Darstellung und des Verhaltens von Datenfeldern für nicht systeminterne Datentypen im Datenmodell

Mit dieser Methode können Sie die Benutzeroberfläche für ein einzelnes Datenfeld anpassen. Dies ist eine schemaspezifische Anpassung, in der Sie das Feld einer Feldvorlage zuordnen, die für diesen Datentyp spezifischer als die Standardvorlage ist. Sie können beispielsweise ein Textfeld markieren, das E-Mail-Adressen als E-Mail-Typ enthält.

Anpassen der Darstellung und des Verhaltens einer einzelnen Tabelle mit einer benutzerdefinierten Seitenvorlage

Gewusst wie: Anpassen des Layouts einer einzelnen Tabelle mit einer benutzerdefinierten Seitenvorlage

Mit dieser Methode können Sie eine einzelne Tabelle anpassen, indem Sie eine Standardvorlage (z. B. "List.aspx) für eine bestimmte Datentabelle ändern. Dies ist eine schemaspezifische Anpassung.

Anpassen der Darstellung und des Verhaltens einer einzelnen Tabelle mit benutzerdefinierten Entitätsvorlagen

Exemplarische Vorgehensweise: Anpassen des Tabellenlayouts mit Entitätsvorlagen

Mit dieser Methode können Sie eine einzelne Tabelle anpassen. Dies ist eine allgemeine Verhaltensanpassung, bei der Sie benutzerdefinierte Entitätsvorlagen erstellen. Sie stellt eine Alternative zum Ansatz mit benutzerdefinierten Seitenvorlagen dar und gibt Ihnen eine bessere Kontrolle über das Tabellenlayout.

Zu diesem Thema steht ein Visual Studio-Projekt mit Quellcode zur Verfügung: Dynamic Data-Vorlagen (möglicherweise in englischer Sprache).

Anpassen der Datenfeldvalidierung mit Attributen, durch Anpassen der Methode, die Feldänderungen verarbeitet, oder durch Anpassen des Validierungsereignishandlers

Gewusst wie: Anpassen der Datenfeldvalidierung im Datenmodell

Mit dieser Methode können Sie die Validierung eines einzelnen Datenfelds anpassen. Dies ist eine schemaspezifische Anpassung, die z. B. durch Überschreiben des OnValidate-Ereignishandlers erhalten wird.

Führen Sie ein Onlinebeispiel für diese Funktion aus: Führen Sie aus.

Anpassen der Datenfeldvalidierung mit einem benutzerdefinierten Validierungsattribut

Gewusst wie: Anpassen der Datenfeldvalidierung im Datenmodell mit benutzerdefinierten Attributen

Mit dieser Methode können Sie die Validierung eines einzelnen Datenfelds anpassen. Dies ist eine schemaspezifische Anpassung, in der Sie ein benutzerdefiniertes Validierungsattribut auf das Datenfeld im Datenmodell anwenden. Sie verwenden diesen Ansatz, wenn die verfügbaren Datenvalidierungsattribute Ihre Anforderungen nicht erfüllen.

Ein Laufzeit-Codebeispiel für diese Funktion finden Sie unter Run.

Filtern von anzuzeigenden Tabellenzeilen in einer untergeordneten Tabelle mit einem Fremdschlüsselwert einer übergeordneten Tabelle

Exemplarische Vorgehensweise: Filtern von Zeilen in Tabellen, die einander über- bzw. untergeordnet sind

Mit dieser Methode können Sie die anzuzeigenden Tabellenzeilen auf Grundlage eines Fremdschlüsselwerts aus einer übergeordneten Tabelle filtern.

Zu diesem Thema steht ein Visual Studio-Projekt mit Quellcode zur Verfügung: Gerüstbau für Dynamic Data (möglicherweise in englischer Sprache). .

Sie können sich u. a. folgendermaßen weiter mit dem Thema befassen:

  • Grundlegendes zum URL-Routing. Weitere Informationen hierzu finden Sie unter ASP.NET-Routing.

  • Grundlegendes zur objektrelationalen Zuordnung in LINQ to SQL. Weitere Informationen finden Sie unter LINQ to SQL (möglicherweise in englischer Sprache).

  • Grundlegendes zum ADO.NET Entity Framework. Weitere Informationen finden Sie unter ADO.NET Entity Framework (möglicherweise in englischer Sprache).

Zurück nach oben

Community-Beiträge

Anzeigen:
© 2014 Microsoft