asp.net episode 2 uwe baumann technologieberater microsoft deutschland gmbh [email protected]...
TRANSCRIPT
ASP.NET Episode 2
Uwe Baumann
TechnologieberaterMicrosoft Deutschland GmbH
[email protected]/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
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%
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
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
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
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
DemoDemo
Seitenvorlagen (Masterpages)Seitenvorlagen (Masterpages)
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
DemoDemo
Direkte DatenbindungObjekt-DatenbindungDirekte DatenbindungObjekt-Datenbindung
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
DemoDemo
Authorisierung und AuthentifizierungAuthorisierung und Authentifizierung
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
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
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
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>
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" %>
DemoDemo
SQL CachingSQL Caching
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
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
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
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
Video TitleVideo Title
Customer NameCustomer Name
Speaker NameSpeaker TitleMicrosoft Corporation
Speaker NameSpeaker TitleMicrosoft Corporation
Announcement TitleAnnouncement Title
Demo TitleDemo Title
Speaker NameSpeaker TitleMicrosoft Corporation
Speaker NameSpeaker TitleMicrosoft Corporation
© 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.