27
ASP.NET Episode 2 Uwe Baumann Technologieberater Microsoft Deutschland GmbH [email protected] weblogs.asp.net/

ASP.NET Episode 2 Uwe Baumann Technologieberater Microsoft Deutschland GmbH [email protected] weblogs.asp.net/uweinside

Embed Size (px)

Citation preview

Page 1: ASP.NET Episode 2 Uwe Baumann Technologieberater Microsoft Deutschland GmbH uwebaum@microsoft.com weblogs.asp.net/uweinside

ASP.NET Episode 2

Uwe Baumann

TechnologieberaterMicrosoft Deutschland GmbH

[email protected]/uweinside

Page 2: ASP.NET Episode 2 Uwe Baumann Technologieberater Microsoft Deutschland GmbH uwebaum@microsoft.com weblogs.asp.net/uweinside

Was bisher geschah (1)Was bisher geschah (1)

ASP.NET 1.xBasiert auf Microsoft .NET Runtime und FrameworkRiesige ObjektbibliothekObjektorientiert und eventgesteuert (Page-Controller-Modell)Verschiedene Sprachen verfügbar: C#, Visual Basic. NET, J#, COBOLPerformant durch kompilierten Code und moderne Architektur

ASP.NET 1.xBasiert auf Microsoft .NET Runtime und FrameworkRiesige ObjektbibliothekObjektorientiert und eventgesteuert (Page-Controller-Modell)Verschiedene Sprachen verfügbar: C#, Visual Basic. NET, J#, COBOLPerformant durch kompilierten Code und moderne Architektur

Page 3: ASP.NET Episode 2 Uwe Baumann Technologieberater Microsoft Deutschland GmbH uwebaum@microsoft.com weblogs.asp.net/uweinside

Was bisher geschah (2)Was bisher geschah (2)

Erfolg über die Microsoft-Welt hinausImplementation auf Linux durch Ximian MONO-Projekt (jetzt: Novell)

Marktanteil auf JSP-NiveauDeutschland: PHP ist Markführer JSP und ASP.NET unter 10%

Erfolg über die Microsoft-Welt hinausImplementation auf Linux durch Ximian MONO-Projekt (jetzt: Novell)

Marktanteil auf JSP-NiveauDeutschland: PHP ist Markführer JSP und ASP.NET unter 10%

Page 4: ASP.NET Episode 2 Uwe Baumann Technologieberater Microsoft Deutschland GmbH uwebaum@microsoft.com weblogs.asp.net/uweinside

Das Ziel: ProduktivitätDas Ziel: Produktivität

„Das Rad nicht neu erfinden“Nicht die 100.000ste Benutzerverwaltung schreiben …… lieber Features implementieren und testen!

Funktionalität aus der Box ohne Kompromisse

Anbindung bestehender InfrastrukturVolle Kontrolle über Funktionalität und Design

„Das Rad nicht neu erfinden“Nicht die 100.000ste Benutzerverwaltung schreiben …… lieber Features implementieren und testen!

Funktionalität aus der Box ohne Kompromisse

Anbindung bestehender InfrastrukturVolle Kontrolle über Funktionalität und Design

Page 5: ASP.NET Episode 2 Uwe Baumann Technologieberater Microsoft Deutschland GmbH uwebaum@microsoft.com weblogs.asp.net/uweinside

Neue Features im ÜberblickNeue Features im Überblick

Daten-controls

Daten-controls

Login-controls

Login-controls Web PartsWeb Parts Andere

neue Controls

Andereneue Controls

SeitenvorlagenSeitenvorlagen Themesund Skins

Themesund Skins LokalisationLokalisation KompilierungKompilierung

Benutzer-verwaltung

Benutzer-verwaltung

Rollen-verwaltung

Rollen-verwaltung ProfileProfile KonfigurationKonfiguration

SiteMaps

SiteMaps

HealthMonitoring

HealthMonitoring

SQLCaching

SQLCaching

Con

trols

Pag

eFr

am

ew

ork

Serv

ices

un

d A

PIs

Page 6: ASP.NET Episode 2 Uwe Baumann Technologieberater Microsoft Deutschland GmbH uwebaum@microsoft.com weblogs.asp.net/uweinside

Vier Beispiele Vier Beispiele

WYSIWYG TemplatesErweiterbare, modulare BenutzerverwaltungRAD-Datenbindung an BusinesslogikSQL Caching

WYSIWYG TemplatesErweiterbare, modulare BenutzerverwaltungRAD-Datenbindung an BusinesslogikSQL Caching

Login-controls

Login-controls

Benutzer-verwaltung

Benutzer-verwaltung

Daten-controls

Daten-controls

SeitenvorlagenSeitenvorlagen

SQLCaching

SQLCaching

Page 7: ASP.NET Episode 2 Uwe Baumann Technologieberater Microsoft Deutschland GmbH uwebaum@microsoft.com weblogs.asp.net/uweinside

Beispiel 1: SeitenvorlagenBeispiel 1: Seitenvorlagen

Aufgabe: Durchgehendes Seitendesign, performant und wartbar

Kein „automatisches Cut&Paste“Keine IncludesWer Includes verwendet, kommt in die Hölle

Lösung: MasterpagesPerformante, native Lösung aus der RuntimeWYSWYG-Unterstützung durch die Entwicklungsumgebung

Aufgabe: Durchgehendes Seitendesign, performant und wartbar

Kein „automatisches Cut&Paste“Keine IncludesWer Includes verwendet, kommt in die Hölle

Lösung: MasterpagesPerformante, native Lösung aus der RuntimeWYSWYG-Unterstützung durch die Entwicklungsumgebung

Page 8: ASP.NET Episode 2 Uwe Baumann Technologieberater Microsoft Deutschland GmbH uwebaum@microsoft.com weblogs.asp.net/uweinside

DemoDemo

Seitenvorlagen (Masterpages)Seitenvorlagen (Masterpages)

Page 9: ASP.NET Episode 2 Uwe Baumann Technologieberater Microsoft Deutschland GmbH uwebaum@microsoft.com weblogs.asp.net/uweinside

Beispiel 2: DatenbindungBeispiel 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 ControlsRAD-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 ControlsRAD-Stil bei der Anbindung, trotzdem mehrschichtige Architektur möglich

Page 10: ASP.NET Episode 2 Uwe Baumann Technologieberater Microsoft Deutschland GmbH uwebaum@microsoft.com weblogs.asp.net/uweinside

DemoDemo

Direkte DatenbindungObjekt-DatenbindungDirekte DatenbindungObjekt-Datenbindung

Page 11: ASP.NET Episode 2 Uwe Baumann Technologieberater Microsoft Deutschland GmbH uwebaum@microsoft.com weblogs.asp.net/uweinside

Beispiel 3: AuthentifizierungBeispiel 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

Page 12: ASP.NET Episode 2 Uwe Baumann Technologieberater Microsoft Deutschland GmbH uwebaum@microsoft.com weblogs.asp.net/uweinside

DemoDemo

Authorisierung und AuthentifizierungAuthorisierung und Authentifizierung

Page 13: ASP.NET Episode 2 Uwe Baumann Technologieberater Microsoft Deutschland GmbH uwebaum@microsoft.com weblogs.asp.net/uweinside

Das Provider-ModellDas Provider-Modell

Membership API (Benutzerverwaltung)

Benutzer-daten Access Andere

Datenquellen

Controls LoginLogin LoginStatusLoginStatus LoginViewLoginView

AccessMembershipProviderAccessMembershipProvider Andere ProviderAndere Provider

Membership Provider

MembershipMembership MembershipUserMembershipUser

SqlMembershipProviderSqlMembershipProvider

SQL Server

Andere Login-Controls

Andere Login-Controls

Page 14: ASP.NET Episode 2 Uwe Baumann Technologieberater Microsoft Deutschland GmbH uwebaum@microsoft.com weblogs.asp.net/uweinside

SQL CachingSQL Caching

Aufgabe:Hohe Performance bei datengetriebenen, hochfrequentierten Webseiten

Lösung: SQL CachingZusammenarbeit von Datenbank und WebapplikationCache-Invalidierung bei Datenänderung; Seite wird nur bei geänderten Daten neu gerendert

Aufgabe:Hohe Performance bei datengetriebenen, hochfrequentierten Webseiten

Lösung: SQL CachingZusammenarbeit von Datenbank und WebapplikationCache-Invalidierung bei Datenänderung; Seite wird nur bei geänderten Daten neu gerendert

Page 15: ASP.NET Episode 2 Uwe Baumann Technologieberater Microsoft Deutschland GmbH uwebaum@microsoft.com weblogs.asp.net/uweinside

SQL Caching im DetailSQL Caching im Detail

SQL Server 2005Direkte Unterstützung durch Notifications

SQL Server 2000 und 7.0Polling-Prozess und Trigger

SQL Server 2005Direkte Unterstützung durch Notifications

SQL Server 2000 und 7.0Polling-Prozess und Trigger

Page 16: ASP.NET Episode 2 Uwe Baumann Technologieberater Microsoft Deutschland GmbH uwebaum@microsoft.com weblogs.asp.net/uweinside

SQL Caching SetupSQL Caching Setup

SQL Datenbank vorbereiten:aspnet_regsql.exe -S <Server> -U <Username> -P

<Password> -ed -d Northwind -et -t Employees

Applikation vorbereiten: <caching> <sqlCacheDependency

enabled = "true" pollTime = "1000" > <databases> <add name="Northwind"

connectionStringName="NorthwindConnectionString1" pollTime = "1000"/> </databases> </sqlCacheDependency> </caching>

SQL Datenbank vorbereiten:aspnet_regsql.exe -S <Server> -U <Username> -P

<Password> -ed -d Northwind -et -t Employees

Applikation vorbereiten: <caching> <sqlCacheDependency

enabled = "true" pollTime = "1000" > <databases> <add name="Northwind"

connectionStringName="NorthwindConnectionString1" pollTime = "1000"/> </databases> </sqlCacheDependency> </caching>

Page 17: ASP.NET Episode 2 Uwe Baumann Technologieberater Microsoft Deutschland GmbH uwebaum@microsoft.com weblogs.asp.net/uweinside

SQL Caching vorbereitenSQL Caching vorbereiten

Seitencaching konfigurieren<%@ OutputCache Duration="3600" SqlDependency="Northwind:Employees" VaryByParam="none" %>

Seitencaching konfigurieren<%@ OutputCache Duration="3600" SqlDependency="Northwind:Employees" VaryByParam="none" %>

Page 18: ASP.NET Episode 2 Uwe Baumann Technologieberater Microsoft Deutschland GmbH uwebaum@microsoft.com weblogs.asp.net/uweinside

DemoDemo

SQL CachingSQL Caching

Page 19: ASP.NET Episode 2 Uwe Baumann Technologieberater Microsoft Deutschland GmbH uwebaum@microsoft.com weblogs.asp.net/uweinside

FazitFazit

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 WebprogrammierungEnge 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 WebprogrammierungEnge Integration in Backend (Datenbank) und Frontend (Webserver) ermöglich hohe Performance Trotzdem kompromisslose Objektorientierung und mehrschichtige Architektur

Page 20: ASP.NET Episode 2 Uwe Baumann Technologieberater Microsoft Deutschland GmbH uwebaum@microsoft.com weblogs.asp.net/uweinside

Fragen?Fragen?

Vielen Dank für Ihr Interesse!Kennen Sie http://www.asp.net?Vielen Dank für Ihr Interesse!Kennen Sie http://www.asp.net?

Uwe BaumannTechnologieberaterMicrosoft Deutschland [email protected]://weblogs.asp.net/uweinside

Page 21: ASP.NET Episode 2 Uwe Baumann Technologieberater Microsoft Deutschland GmbH uwebaum@microsoft.com weblogs.asp.net/uweinside

Sample fillSample fillcolorcolor

Sample fillSample fillcolorcolor

Sample fillSample fillcolorcolor

PowerPoint GuidelinesPowerPoint Guidelines

Font, size, and color for text have been formatted for you in the Slide MasterUse the color palette shown belowSee next slide for additional guidelines

Font, size, and color for text have been formatted for you in the Slide MasterUse the color palette shown belowSee next slide for additional guidelines

Page 22: ASP.NET Episode 2 Uwe Baumann Technologieberater Microsoft Deutschland GmbH uwebaum@microsoft.com weblogs.asp.net/uweinside

PowerPoint TemplateSubtitle ColorPowerPoint TemplateSubtitle Color

Example of a slide with a subheadGenerally set subhead to 36pt or smaller so if will fit on a single lineSubheads should be set in UppercaseThe 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 subheadGenerally set subhead to 36pt or smaller so if will fit on a single lineSubheads should be set in UppercaseThe 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

Page 23: ASP.NET Episode 2 Uwe Baumann Technologieberater Microsoft Deutschland GmbH uwebaum@microsoft.com weblogs.asp.net/uweinside

Video TitleVideo Title

Page 24: ASP.NET Episode 2 Uwe Baumann Technologieberater Microsoft Deutschland GmbH uwebaum@microsoft.com weblogs.asp.net/uweinside

Customer NameCustomer Name

Speaker NameSpeaker TitleMicrosoft Corporation

Speaker NameSpeaker TitleMicrosoft Corporation

Page 25: ASP.NET Episode 2 Uwe Baumann Technologieberater Microsoft Deutschland GmbH uwebaum@microsoft.com weblogs.asp.net/uweinside

Announcement TitleAnnouncement Title

Page 26: ASP.NET Episode 2 Uwe Baumann Technologieberater Microsoft Deutschland GmbH uwebaum@microsoft.com weblogs.asp.net/uweinside

Demo TitleDemo Title

Speaker NameSpeaker TitleMicrosoft Corporation

Speaker NameSpeaker TitleMicrosoft Corporation

Page 27: ASP.NET Episode 2 Uwe Baumann Technologieberater Microsoft Deutschland GmbH uwebaum@microsoft.com weblogs.asp.net/uweinside

© 2004 Microsoft Corporation. All rights reserved.© 2004 Microsoft Corporation. All rights reserved.This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.