ASP.NET Episode 2 Uwe Baumann Technologieberater Microsoft Deutschland GmbH weblogs.asp.net/uweinside
Was bisher geschah (1) ASP.NET 1.x Basiert auf Microsoft.NET Runtime und Framework Riesige Objektbibliothek Objektorientiert und eventgesteuert (Page- Controller-Modell) Verschiedene Sprachen verfügbar: C#, Visual Basic. NET, J#, COBOL Performant durch kompilierten Code und moderne Architektur ASP.NET 1.x Basiert auf Microsoft.NET Runtime und Framework Riesige Objektbibliothek Objektorientiert und eventgesteuert (Page- Controller-Modell) Verschiedene Sprachen verfügbar: C#, Visual Basic. NET, J#, COBOL Performant durch kompilierten Code und moderne Architektur
Was bisher geschah (2) Erfolg über die Microsoft-Welt hinaus Implementation auf Linux durch Ximian MONO-Projekt (jetzt: Novell) Marktanteil auf JSP-Niveau Deutschland: PHP ist Markführer JSP und ASP.NET unter 10% Erfolg über die Microsoft-Welt hinaus Implementation auf Linux durch Ximian MONO-Projekt (jetzt: Novell) Marktanteil auf JSP-Niveau Deutschland: PHP ist Markführer JSP und ASP.NET unter 10%
Das Ziel: Produktivität Das Rad nicht neu erfinden Nicht die ste Benutzerverwaltung schreiben … … lieber Features implementieren und testen! Funktionalität aus der Box ohne Kompromisse Anbindung bestehender Infrastruktur Volle Kontrolle über Funktionalität und Design Das Rad nicht neu erfinden Nicht die ste Benutzerverwaltung schreiben … … lieber Features implementieren und testen! Funktionalität aus der Box ohne Kompromisse Anbindung bestehender Infrastruktur Volle Kontrolle über Funktionalität und Design
Neue Features im Überblick Daten- controls Daten- controls Login- controls Login- controls Web Parts Andere neue Controls Andere neue Controls Seitenvorlagen Themes und Skins Themes und Skins Lokalisation Kompilierung Benutzer- verwaltung Benutzer- verwaltung Rollen- verwaltung Rollen- verwaltung Profile Konfiguration Site Maps Site Maps Health Monitoring Health Monitoring SQL Caching SQL Caching Controls Page Framework Services und APIs
Vier Beispiele WYSIWYG Templates Erweiterbare, modulare Benutzerverwaltung RAD-Datenbindung an Businesslogik SQL Caching WYSIWYG Templates Erweiterbare, modulare Benutzerverwaltung RAD-Datenbindung an Businesslogik SQL Caching Login- controls Login- controls Benutzer- verwaltung Benutzer- verwaltung Daten- controls Daten- controls Seitenvorlagen SQL Caching SQL Caching
Beispiel 1: Seitenvorlagen Aufgabe: Durchgehendes Seitendesign, performant und wartbar Kein automatisches Cut&Paste Keine Includes Wer Includes verwendet, kommt in die Hölle Lösung: Masterpages Performante, native Lösung aus der Runtime WYSWYG-Unterstützung durch die Entwicklungsumgebung Aufgabe: Durchgehendes Seitendesign, performant und wartbar Kein automatisches Cut&Paste Keine Includes Wer Includes verwendet, kommt in die Hölle Lösung: Masterpages Performante, native Lösung aus der Runtime WYSWYG-Unterstützung durch die Entwicklungsumgebung
Demo Seitenvorlagen (Masterpages)
Beispiel 2: Datenbindung Aufgabe: Anbindung visueller Elemente (Tabelle etc.) an Daten Schnell und dreckig, wie Visual Basic 6 oder ColdFusion? Oder nach dem Lehrbuch, per Code in der Präsentationsschicht durch Zugriff auf die Businesslogik? Lösung: Data Provider Controls RAD-Stil bei der Anbindung, trotzdem mehrschichtige Architektur möglich Aufgabe: Anbindung visueller Elemente (Tabelle etc.) an Daten Schnell und dreckig, wie Visual Basic 6 oder ColdFusion? Oder nach dem Lehrbuch, per Code in der Präsentationsschicht durch Zugriff auf die Businesslogik? Lösung: Data Provider Controls RAD-Stil bei der Anbindung, trotzdem mehrschichtige Architektur möglich
Demo Direkte Datenbindung Objekt-Datenbindung Direkte Datenbindung Objekt-Datenbindung
Beispiel 3: Authentifizierung Aufgabe: Aufwand für Authorisierung und Authentifizierung reduzieren Im Extremfall komplett out of the Box Flexibel genug für die Anbindung an beliebige Backendsysteme (auch bereits vorhandene) Lösung: Flexible, modulare Kombination aus Providerkomponenten, API und User Interface- Komponenten Aufgabe: Aufwand für Authorisierung und Authentifizierung reduzieren Im Extremfall komplett out of the Box Flexibel genug für die Anbindung an beliebige Backendsysteme (auch bereits vorhandene) Lösung: Flexible, modulare Kombination aus Providerkomponenten, API und User Interface- Komponenten
Demo Authorisierung und Authentifizierung
Das Provider-Modell Membership API (Benutzerverwaltung) Benutzer- daten Access Andere Datenquellen Controls Login LoginStatus LoginView AccessMembershipProvider Andere Provider Membership Provider Membership MembershipUser SqlMembershipProvider SQL Server Andere Login- Controls Andere Login- Controls
SQL Caching Aufgabe: Hohe Performance bei datengetriebenen, hochfrequentierten Webseiten Lösung: SQL Caching Zusammenarbeit von Datenbank und Webapplikation Cache-Invalidierung bei Datenänderung; Seite wird nur bei geänderten Daten neu gerendert Aufgabe: Hohe Performance bei datengetriebenen, hochfrequentierten Webseiten Lösung: SQL Caching Zusammenarbeit von Datenbank und Webapplikation Cache-Invalidierung bei Datenänderung; Seite wird nur bei geänderten Daten neu gerendert
SQL Caching im Detail SQL Server 2005 Direkte Unterstützung durch Notifications SQL Server 2000 und 7.0 Polling-Prozess und Trigger SQL Server 2005 Direkte Unterstützung durch Notifications SQL Server 2000 und 7.0 Polling-Prozess und Trigger
SQL Caching Setup SQL Datenbank vorbereiten: aspnet_regsql.exe -S -U -P -ed -d Northwind -et -t Employees Applikation vorbereiten: <sqlCacheDependency enabled = "true" pollTime = "1000" > <add name="Northwind" connectionStringName="NorthwindConnectionString1" pollTime = "1000"/> SQL Datenbank vorbereiten: aspnet_regsql.exe -S -U -P -ed -d Northwind -et -t Employees Applikation vorbereiten: <sqlCacheDependency enabled = "true" pollTime = "1000" > <add name="Northwind" connectionStringName="NorthwindConnectionString1" pollTime = "1000"/>
SQL Caching vorbereiten Seitencaching konfigurieren Seitencaching konfigurieren
Demo SQL Caching
Fazit ASP.NET 2.0 soll Produktivität, gute Architektur und Performance vereinen ASP.NET bietet eine drastische Erhöhung der Produktivität für Allerweltsaufgaben bei der Webprogrammierung Enge Integration in Backend (Datenbank) und Frontend (Webserver) ermöglich hohe Performance Trotzdem kompromisslose Objektorientierung und mehrschichtige Architektur ASP.NET 2.0 soll Produktivität, gute Architektur und Performance vereinen ASP.NET bietet eine drastische Erhöhung der Produktivität für Allerweltsaufgaben bei der Webprogrammierung Enge Integration in Backend (Datenbank) und Frontend (Webserver) ermöglich hohe Performance Trotzdem kompromisslose Objektorientierung und mehrschichtige Architektur
Fragen? Vielen Dank für Ihr Interesse! Kennen Sie Vielen Dank für Ihr Interesse! Kennen Sie Uwe Baumann Technologieberater Microsoft Deutschland GmbH
PLEASE READ (hidden slide) This template uses Microsofts corporate font, Segoe Segoe is not a standard font included with Windows, so if you have not already done so, you need to install it on your computer How to install Segoe: Get the font at: \\Showsrus\images\Corporate_Fonts\PC\Segoe or For PowerPoint, choose the PC OpenType or TrueType version of the font. Copy all the.ttf files into your c:\windows\fonts folder Questions: This template uses Microsofts corporate font, Segoe Segoe is not a standard font included with Windows, so if you have not already done so, you need to install it on your computer How to install Segoe: Get the font at: \\Showsrus\images\Corporate_Fonts\PC\Segoe or For PowerPoint, choose the PC OpenType or TrueType version of the font. Copy all the.ttf files into your c:\windows\fonts folder Questions:
Sample fill color PowerPoint Guidelines Font, size, and color for text have been formatted for you in the Slide Master Use the color palette shown below See next slide for additional guidelines Font, size, and color for text have been formatted for you in the Slide Master Use the color palette shown below See next slide for additional guidelines
PowerPoint Template Subtitle Color Example of a slide with a subhead Generally set subhead to 36pt or smaller so if will fit on a single line Subheads should be set in Uppercase The subhead color is defined for this template but must be selected; On the font color palette, select the color to the right of title color Example of a slide with a subhead Generally set subhead to 36pt or smaller so if will fit on a single line Subheads should be set in Uppercase The subhead color is defined for this template but must be selected; On the font color palette, select the color to the right of title color
Video Title
Customer Name Speaker Name Speaker Title Microsoft Corporation Speaker Name Speaker Title Microsoft Corporation
Announcement Title
Demo Title Speaker Name Speaker Title Microsoft Corporation Speaker Name Speaker Title Microsoft Corporation
© 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.