Tagbasiertes Anwendungsentwicklungsmodell

Mit ASP.NET, Version 2.0, wurden viele Änderungen eingeführt, mit denen Crystal Reports für Visual Studio erweitert wird. Eine der bedeutendsten Änderungen ist die verstärkte Nutzung von XML in der ASPX-Seite, wodurch ein vollständiges tagbasiertes Anwendungsentwicklungsmodell entstanden ist.

Bereits in früheren Versionen von ASP.NET spielten XML-Tags eine wichtige Rolle:

  • Jedes visuelle .NET-Steuerelement wurde in der ASPX-Seite durch XML-Tags dargestellt.
  • Durch die den einzelnen Tags zugeordneten Eigenschaften konnten grundlegende Einstellungen direkt in der ASPX-Seite konfiguriert werden.
  • Für umfangreichere Konfigurationen einiger komplexerer Steuerelemente wurden geschachtelte Tags verwendet.

In ASP.NET 2.0 wurde XML zu einem vollständig tagbasierten Anwendungsentwicklungsmodell erweitert. Dabei bildet das DataSource-Framework eine Hauptkomponente dieses Modells: eine komplett tagbasierte Methodik für den Datenbankzugriff und die Datenbankinteraktion, ohne dass manuell Code programmiert werden muss.

Die Übernahme des tagbasierten Anwendungsentwicklungsmodells wurde in ASP.NET 2.0 durch zwei GUI-Innovationen weiter gefördert:

  • Smarttasks.

    Der Smarttaskbereich wird eingeblendet, sobald dem Web Form ein .NET-Steuerelement hinzugefügt wird. Smarttasks erleichtern die Konfiguration von Funktionen. Durch jede im Smarttaskbereich vorgenommene Auswahl werden innerhalb der XML-Steuerelementtags automatisch Informationen zu Eigenschaften und geschachtelten Tags generiert.

  • Drag & Drop-Integration für das DataSource-Steuerelement im Fenster des Server-Explorers.

    Wenn Sie eine Tabelle aus dem Server-Explorer-Fenster auf das Web Form ziehen, wird automatisch ein DataGrid generiert. Da das DataGrid vorkonfiguriert ist, werden über das zugeordnete DataSource-Steuerelement Daten aus der entsprechenden Datenbanktabelle angezeigt. Dies erfolgt sowohl grafisch (Entwurfsansicht) als auch textbasiert in der deklarativen XML (Quellansicht). Sie können das DataGrid durch Auswahl von Optionen im Smarttaskbereich problemlos bearbeiten, damit Datensätze im DataGrid sortiert, bearbeitet, aktualisiert und gelöscht werden. Sämtliche Datenänderungen werden anschließend an die zugrunde liegende Datenbanktabelle weitergegeben.

Auswirkungen auf das CrystalReportViewer-Steuerelement und Crystal Reports

Crystal Reports nutzt die Vorteile des tagbasierten Anwendungsentwicklungsmodells durch die Verwendung eines neuen CrystalReportSource-Steuerelements (das das Framework für das DataSource-Steuerelement implementiert). Das CrystalReportSource-Steuerelement kapselt einen Crystal Reports-Bericht ein.

NoteAnmerkung

Weitere Informationen zum CrystalReportSource-Steuerelement finden Sie unter CrystalReportSource-Steuerelement.

Bei Verwendung des tagbasierten Anwendungsentwicklungsmodells wird das CrystalReportViewer-Steuerelement dem CrystalReportSource-Steuerelement über die im Smarttaskbereich getroffenen Auswahlen zugeordnet. Diese Auswahlen werden dann in den XML-Tags dargestellt, die für die ASPX-Seite generiert werden.

NoteAnmerkung

Durch die neu entstandene Beziehung zwischen dem CrystalReportViewer-Steuerelement und dem CrystalReportSource-Steuerelement wird die für ein DataGrid-Steuerelement (bzw. beliebige andere visuelle .NET-Steuerelemente) und das SqlDataSource-Steuerelement verwendete Struktur widergespiegelt.

Andere Entwicklungsmodelle

Es sollte nicht vergessen werden, dass es sich beim tagbasierten Anwendungsmodell in ASP.NET 2.0 um ein optionales Framework handelt. Einige Entwickler bevorzugen möglicherweise ein codebasiertes Entwicklungsmodell, das maximale Flexibilität in puncto Konfiguration und Erweiterbarkeit gewährleistet. In diesem Fall sollten Sie nur das Tagmodell von ASP.NET, Version 1.0, verwenden und die Funktionalität durch manuell programmierten Code in der CodeBehind-Klasse nutzen.

NoteAnmerkung

In ASP.NET 2.0 wird die der ASPX-Seite zugeordnete Klasse aufgrund einer veränderten Seitenarchitektur ab sofort als CodeBehind-Klasse bezeichnet. Im Gegensatz zu einer CodeBehind-Klasse, die als Basisklasse für die ASPX-Seite fungiert, wurden die ASPX-Seite und die ihr zugeordnete Klasse als zwei Segmente einer einzelnen Klasse neu konfiguriert, die im Objektbrowser als eine einheitliche Klasse verfügbar gemacht wird. Diese Unterteilung wird durch Teilklassen möglich, die ein neues Feature in .NET Framework, Version 2.0, darstellen.