Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Web Technologies mit ASP.NET

Ähnliche Präsentationen


Präsentation zum Thema: "Web Technologies mit ASP.NET"—  Präsentation transkript:

1 Web Technologies mit ASP.NET
Thorsten Planeth (Microsoft Student Partner, MCP) Web Technologies mit ASP.NET STC 02. – 03. Juni 2004

2 Web Technologies mit ASP.NET
Gliederung Einleitung ASP.NET Ereignisse Datenbindung State Management Sicherheit Modularisierung Webservices Zusammenfassung Web Technologies mit ASP.NET STC 02. – 03. Juni 2004

3 Web Technologies mit ASP.NET
Einleitung Einleitung ASP.NET Ereignisse Datenbindung State Management Grundlagen Web HTTP-Response Kurzübersicht Einordnung in die Architektur Web Technologies mit ASP.NET STC 02. – 03. Juni 2004

4 Web Technologies mit ASP.NET
1. Grundlagen Web Einleitung ASP.NET Ereignisse Datenbindung State Management Client-Server-Architektur Protokoll: HTTP, HTML Client: Thin-Clients, JavaScript, VBScript, heterogene Webbrowser Server: Windows 2003 Server, IIS, ASP.NET (Aktive Server Pages .NET) Entwicklungsumgebungen: Visual Studio Webmatrix Notepad Internet ASP.NET IIS Windows 2003 Server Web Technologies mit ASP.NET STC 02. – 03. Juni 2004

5 2. HTTP-Response Webbrowser Windows 2003 Server
Einleitung ASP.NET Ereignisse Datenbindung State Management Webbrowser Windows 2003 Server Internet Security and Acceleration Server Internet Information Server ASP.NET-Engine PHP-Engine ISAPI-Engine ASP.NET-Anwendung Web Technologies mit ASP.NET STC 02. – 03. Juni 2004

6 Web Technologies mit ASP.NET
3. Kurzübersicht Einleitung ASP.NET Ereignisse Datenbindung State Management Client Web-Server Browser Client-Software Webanwendung Webservice Web-Server Web Technologies mit ASP.NET STC 02. – 03. Juni 2004

7 4. Einordnung in die Architektur
Einleitung ASP.NET Ereignisse Datenbindung State Management GUI Win-GUI ASP.NET Webanwendungen Webservice Businesslogik C#, VB.NET etc… Dataaccess ADO.NET Datenbank SQL Server, MSDE, (Access) Web Technologies mit ASP.NET STC 02. – 03. Juni 2004

8 Web Technologies mit ASP.NET
Einleitung ASP.NET Ereignisse Datenbindung State Management Demo (1) Namespace ASP.NET Web Forms Teile einer ASP.NET Web-Form Das ASP.NET Prinzip Trennung von Form und Funktion ASP.NET Server Controls Standard ASP.NET Controls Demo (2) Web Technologies mit ASP.NET STC 02. – 03. Juni 2004

9 Web Technologies mit ASP.NET
1. Demo Einleitung ASP.NET Ereignisse Datenbindung State Management ASP.NET-Webanwendung Besondere Dateitypen Web.config Global.asax Webform (Endung *.aspx) Web Technologies mit ASP.NET STC 02. – 03. Juni 2004

10 Web Technologies mit ASP.NET
2. Namespace Einleitung ASP.NET Ereignisse Datenbindung State Management System.Web UI Design WebControls HtmlControls Services Configuration Description Discovery Protocols Caching Hosting Mail SessionState Web Technologies mit ASP.NET STC 02. – 03. Juni 2004

11 Web Technologies mit ASP.NET
3. ASP.NET Web Forms Einleitung ASP.NET Ereignisse Datenbindung State Management Controlbasiertes, eventgesteuertes Modell für Web User Interface Sauber gekapselt, weniger Code Common Language Runtime führt den Code aus Visual C#, Visual Basic®, JScript™ Bessere Performance Keine Konflikte mit ASP Web Forms sind “.ASPX”-Dateien Web Technologies mit ASP.NET STC 02. – 03. Juni 2004

12 4. Teile einer ASP.NET Web Form
Einleitung ASP.NET Ereignisse Datenbindung State Management Directives Code Blocks Static Text Control Tags HTML Tags Data Binding Expressions Web Technologies mit ASP.NET STC 02. – 03. Juni 2004

13 Web Technologies mit ASP.NET
5. Das ASP.NET Prinzip Einleitung ASP.NET Ereignisse Datenbindung State Management INETINFO.EXE POST /site/form1.aspx ..... HTTP Request ASPNET_ISAPI.DLL HTTP OK ..... HTTP Response ASPNET_WP.EXE form1.aspx form1_aspx.dll WebService language="c#" class= using System.Web.Services; [WebService(Description="Provides a v public class Simple { [WebMethod(Description=„ Returns a nice greeting")] public string Hello() { return "Hello"; } Page Class Assembly Instanzieren Kompilieren Web Technologies mit ASP.NET STC 02. – 03. Juni 2004

14 6. Trennung von Form und Funktion
Einleitung ASP.NET Ereignisse Datenbindung State Management Trennung der Funktionalität (Code) vom Layout hat viele Vorteile In ASP.NET heißt dies „Code Behind“ „Inherits“ Attribut Direktive Code-behind Files Können vorkompiliert sein oder „on demand“ übersetzt werden „SRC“-Attribute der Page Direktive Standard bei Visual Studio.NET: vorkompilierte Code-Behind-Files Web Technologies mit ASP.NET STC 02. – 03. Juni 2004

15 7. ASP.NET Server Controls
Einleitung ASP.NET Ereignisse Datenbindung State Management Server Controls kapseln ein bestimmtes Verhalten (inklusive User Interface) Ähnlich zu Visual Basic® Deklarativ mit runat="server" Controls erzeugen HTML Unterschiedliche Clients unterstützbar DHTML, HTML 3.2, etc. Eingabe des Clients wird strukturiert Attribute für die Eingabedaten Auslösen von Ereignisse Web Technologies mit ASP.NET STC 02. – 03. Juni 2004

16 8. Standard ASP.NET Controls
Einleitung ASP.NET Ereignisse Datenbindung State Management HTML Controls Entsprechen den HTML Tags 1:1 Web Controls Rendern Client-spezifisches HTML Streng typisiertes Objektmodell Manche erzeugen ein HTML tag: Button, TextBox, DropDownList Andere erzeugen komplexes HTML inklusive Script-Code: DataGrid, Calendar, Validators Web Technologies mit ASP.NET STC 02. – 03. Juni 2004

17 Web Technologies mit ASP.NET
9. Demo Einleitung ASP.NET Ereignisse Datenbindung State Management Photoarchiv (1)… Web Technologies mit ASP.NET STC 02. – 03. Juni 2004

18 Web Technologies mit ASP.NET
Ereignisse Einleitung ASP.NET Ereignisse Datenbindung State Management Events Abfolge der Events Ereignisse bei einem ASP.NET-Aufruf Web Technologies mit ASP.NET STC 02. – 03. Juni 2004

19 Web Technologies mit ASP.NET
1. Ereignisse Einleitung ASP.NET Ereignisse Datenbindung State Management Ereignisse werden: Vom Client ausgelöst Im Server-Code behandelt Benötigen ein Postback vom Client Die Daten werden automatisch wieder eingetragen ViewState-Property ist als Hidden Form Field implementiert Jedes Control hat eine EnableViewState-Property Web Technologies mit ASP.NET STC 02. – 03. Juni 2004

20 Web Technologies mit ASP.NET
2. Abfolge der Events Einleitung ASP.NET Ereignisse Datenbindung State Management Page wird geladen und Control-Hierarchy erzeugt Page_Load PostBack 1. Change Events Textbox1_Changed Kostbare Zeit 2. Action Events Button1_Click Control-Hierarchie wird gerendered Page_Unload Page-Objekt wird gelöscht Web Technologies mit ASP.NET STC 02. – 03. Juni 2004

21 3. Ereignisse bei einem ASP.NET-Aufruf
Einleitung ASP.NET Ereignisse Datenbindung State Management Application_Start (Anwendungsweit) Application_BeginRequest (Aufrufweit) Application_AuthenticateRequest (Aufrufweit) Session_Start (Sessionweit) Page_Init (Aufrufweit) Page_Load (Aufrufweit) Programmausführung… ??? Application_Error (Aufrufweit) Application_EndRequest (Aufrufweit) Session_End (Sessionweit) Application_End (Anwendungsweit) Web Technologies mit ASP.NET STC 02. – 03. Juni 2004

22 Web Technologies mit ASP.NET
4. Demo Einleitung ASP.NET Ereignisse Datenbindung State Management Datei-Upload Web Technologies mit ASP.NET STC 02. – 03. Juni 2004

23 Web Technologies mit ASP.NET
Datenbindung ASP.NET Ereignisse Datenbindung State Management Sicherheit Web Forms Datenbindung Simple Binding List Binding Demo Web Technologies mit ASP.NET STC 02. – 03. Juni 2004

24 1. Web Forms Datenbindung
ASP.NET Ereignisse Datenbindung State Management Sicherheit Ein einfacher, deklarativer Weg um Web UI Controls an Daten zu binden “Simple” Binding eines Properties eines Controls “List” Binding an eine Datenquelle: DataGrid, DropDownList Unterstützung einer Vielzahl von Datenquellen Vorsicht: „One way snapshot model“ Im Code muss angegeben werden wann das Binding stattfindet Web Technologies mit ASP.NET STC 02. – 03. Juni 2004

25 Web Technologies mit ASP.NET
2. Simple Binding Syntax ASP.NET Ereignisse Datenbindung State Management Sicherheit Binden an: Eine Property der Seite Rückgabewert einer Methode Eine Property eines anderen Controls Schritt 1: Binding setzen Deklarativ (in HTML): <asp:Label Text=<%# custID %> … /> Schritt 2: DataBind aufrufen Sub Page_Load(s As Object, e As EventArgs) Label1.DataBind() End Sub Web Technologies mit ASP.NET STC 02. – 03. Juni 2004

26 2. Simple Binding Beispiel
ASP.NET Ereignisse Datenbindung State Management Sicherheit Page language=“VB” %> <script runat=server> Sub Page_Load(s as Object, e as EventArgs) Label1.DataBind() End Sub </script> <html> <body> <asp:Label id=Label1 runat=server Text=<%# DateTime.Now %> /> </body> </html> Web Technologies mit ASP.NET STC 02. – 03. Juni 2004 /> Web Technologies mit ASP.NET. STC 02. – 03. Juni 2004.", "width": "800" }

27 Web Technologies mit ASP.NET
3. List Binding Syntax ASP.NET Ereignisse Datenbindung State Management Sicherheit Alle Klassen die IEnumerable implementieren sind Datenquellen Schritt 1: Binding setzen Deklarativ: <asp:DataGrid DataSource=<%# ds %> … /> Imperativ: DataGrid1.DataSource = ds Schritt 2: DataBind aufrufen Sub Page_Load(s As Object, e As EventArgs) DataGrid1.DataBind() End Sub Web Technologies mit ASP.NET STC 02. – 03. Juni 2004

28 3. List Binding Datenquellen
ASP.NET Ereignisse Datenbindung State Management Sicherheit ADO.NET Klassen DataReader DataSet auch DataTable, DataView Andere IEnumerable Typen Arraylist Array Hashtable Web Technologies mit ASP.NET STC 02. – 03. Juni 2004

29 Web Technologies mit ASP.NET
3. DataList Beispiel ASP.NET Ereignisse Datenbindung State Management Sicherheit script runat=server> Sub Page_Load(s as Object, e as EventArgs) DataList1.DataSource = GetCustData() DataList1.DataBind() End Sub </script> <html> <body> <asp:DataList id=DataList1 runat=server> <ItemTemplate> <%# Container.DataItem %> </ItemTemplate> </asp:DataList> </body> </html> Web Technologies mit ASP.NET STC 02. – 03. Juni 2004 <%# Container.DataItem %> Web Technologies mit ASP.NET. STC 02. – 03. Juni 2004.", "width": "800" }

30 Web Technologies mit ASP.NET
4. Demo ASP.NET Ereignisse Datenbindung State Management Sicherheit Photoarchiv (2) Web Technologies mit ASP.NET STC 02. – 03. Juni 2004

31 Web Technologies mit ASP.NET
State Management Ereignisse Datenbindung State Management Sicherheit Modularisierung State Management Arten von State ASP.NET Session Property Cookieless Sessions Session State im SQL Server 2000 Web Technologies mit ASP.NET STC 02. – 03. Juni 2004

32 Web Technologies mit ASP.NET
1. State Management Ereignisse Datenbindung State Management Sicherheit Modularisierung HTTP ist verbindungslos Daher ist wichtig, wo Zustand gehalten wird ASP.NET unterstützt beim Verwalten Web Technologies mit ASP.NET STC 02. – 03. Juni 2004

33 Web Technologies mit ASP.NET
2. Arten von State Ereignisse Datenbindung State Management Sicherheit Modularisierung Application State Globale Applikationseinstellungen Am besten für read-only Daten Session State Enthält die Ergebnisse bisheriger Interaktionen Beispiel: Warenkorb Online-Shopping Cookie State Zustand der im Client gehalten wird Control State Inhalt der einzelnen Controls Web Technologies mit ASP.NET STC 02. – 03. Juni 2004

34 3. ASP.NET Session Property
Ereignisse Datenbindung State Management Sicherheit Modularisierung Session Property kann programatisch gefüllt werden Speicherort kann konfiguriert werden (in web.config) Speicherung im Prozess Speicherung in einem „state server“ Speicherung in einem SQL Server SessionID kann über Cookie oder URL übergeben werden Konfigurierbar über web.config Web Technologies mit ASP.NET STC 02. – 03. Juni 2004

35 Web Technologies mit ASP.NET
4. Cookieless Sessions Ereignisse Datenbindung State Management Sicherheit Modularisierung Über web.config File konfigurierbar <configuration> <system.web> <sessionstate cookieless="true"/> </system.web> </configuration> Automatische Verwaltung Web Technologies mit ASP.NET STC 02. – 03. Juni 2004

36 Web Technologies mit ASP.NET
5. Demo Ereignisse Datenbindung State Management Sicherheit Modularisierung Photoarchiv (3) Web Technologies mit ASP.NET STC 02. – 03. Juni 2004

37 Web Technologies mit ASP.NET
Sicherheit State Management Sicherheit Modularisierung Webservices Authentifizierung Formularbasierte Authentifizierung Windows-Authentifizierung MS Passport Autorisierung Verschlüsselung Web Technologies mit ASP.NET STC 02. – 03. Juni 2004

38 Web Technologies mit ASP.NET
1. Authentifizierung State Management Sicherheit Modularisierung Webservices Konfiguration erfolgt über Web.Config Wahl zwischen Formularbasierter Authentifizierung Windows-Authentifizierung MS Passport-Authentifizierung Web Technologies mit ASP.NET STC 02. – 03. Juni 2004

39 1. Authentifizierung: Formularbasiert
State Management Sicherheit Modularisierung Webservices Benutzerdaten werden in der Anwendung gespeichert Anwendung entscheidet über Authentifizierung Findet Anwendung im Portal Vorteile: Leichte Administration Geringer Implementierungsaufwand Web Technologies mit ASP.NET STC 02. – 03. Juni 2004

40 1. Authentifizierung: Windows
State Management Sicherheit Modularisierung Webservices Authentifizierung erfolgt über Windows-Anmeldedaten Benutzerdaten sind in der Win32-Accesstable gespeichert Vorteil: Im Windows-Intranet erfolgt die Authentifizierung automatisch Nachteil: Umständliche Administration bei vielen Usern Web Technologies mit ASP.NET STC 02. – 03. Juni 2004

41 1. Authentifizierung: MS Passport (1/3)
State Management Sicherheit Modularisierung Webservices Aus der Benutzersicht (1/2) Man hinterlegt einen Login und ein Passwort beim .NET Passport Service. Dazu kann man weitere Daten speichern, wie z.B. Postadresse Meldet man sich bei einer Webseite an, die Passport nutzt, wird man direkt an Passport weitergeleitet zum „authentifizieren“. Passport schickt dann an die Webseite eine Nachricht, ob der Benutzer auch das richtige Passwort wusste und ggf. die Adressdaten. Web Technologies mit ASP.NET STC 02. – 03. Juni 2004

42 1. Authentifizierung: MS Passport (2/3)
State Management Sicherheit Modularisierung Webservices Aus der Benutzersicht (2/2) Der Vorteil: Ich brauche bei einer Bestellung meine Adressdaten nicht ständig eintippen. Der Vorteil: Single SignOn Ich muß mir immer nur einen Login/Passwort-Kombo merken Der Nachteil: Knackt man den Account hat man Zugriff auf viele andere. Web Technologies mit ASP.NET STC 02. – 03. Juni 2004

43 1. Authentifizierung: MS Passport (3/3)
State Management Sicherheit Modularisierung Webservices Zurzeit findet die Form-Authentifikation statt Identification soll über MS Passport stattfinden „Purpose Microsoft® .NET Passport is a core component of the Microsoft .NET initiative. The .NET Passport single sign-in (SSI) service enables you to give consumers a quick, convenient way to sign in to your site.“ Vorteile: Zentrale Benutzeridentifikation Benutzer braucht sich nur ein Login + Passwort merken Nachteil: Daten werden in Amerika von Microsoft gehalten und unterliegen dem amerikanischen Datenschutz (europäischer Datenschutz ist sehr viel strenger) Großer Aufwand in der Implementierung Was ist, wenn Web Technologies mit ASP.NET STC 02. – 03. Juni 2004

44 Web Technologies mit ASP.NET
2. Autorisierung State Management Sicherheit Modularisierung Webservices Rollenkonzept Autorisierung kann ebenfalls in der Web.Config eingestellt werden Es kann statisch festgelegt werden, welche Datei von welcher Rolle oder welchem User ausgeführt werden darf Web Technologies mit ASP.NET STC 02. – 03. Juni 2004

45 Web Technologies mit ASP.NET
Demo State Management Sicherheit Modularisierung Webservices Photoarchiv (4) Web Technologies mit ASP.NET STC 02. – 03. Juni 2004

46 Web Technologies mit ASP.NET
3. Verschlüsselung State Management Sicherheit Modularisierung Webservices Machbar über SSL-Protokoll (Secure Socket Layer) 2 Schritte: Zertifikat im IIS einrichten Codezeile einfügen if(!Request.IsSecureConnection) Response.Redirect("https" + Request.Url.AbsoluteUri.Substring(4,Request.Url.AbsoluteUri.Length-4)); Web Technologies mit ASP.NET STC 02. – 03. Juni 2004

47 Web Technologies mit ASP.NET
Modularisierung Sicherheit Modularisierung Webservices Zusammenfassung Häufig genutzter Code wiederverwenden! Webusercontrol Webcustomcontrol Gerendert Kombiniert Web Technologies mit ASP.NET STC 02. – 03. Juni 2004

48 Modularisierung (Demo)
Sicherheit Modularisierung Webservices Zusammenfassung Photoarchiv (5) Web Technologies mit ASP.NET STC 02. – 03. Juni 2004

49 Web Technologies mit ASP.NET
Webservices Sicherheit Modularisierung Webservices Zusammenfassung Windows-Service über das Internet verfügbar machen  Webservices Szenarien: Zugriff aus Windowsanwendung Zugriff aus Webanwendung Zugriff vom Client einer Webanwendung Web Technologies mit ASP.NET STC 02. – 03. Juni 2004

50 Web Technologies mit ASP.NET
Webservices (Demo) Sicherheit Modularisierung Webservices Zusammenfassung Photoarchiv (6) Web Technologies mit ASP.NET STC 02. – 03. Juni 2004

51 Web Technologies mit ASP.NET
Zusammenfassung Sicherheit Modularisierung Webservices Zusammenfassung ASP.NET ist die .NET Web Application Server Plattform Controlbasiert, eventgetrieben Vereinfachte Entwicklung Wartbarer Programmcode (Trennung von Design (HTML) und Code (C#)) Gerätespezifische Darstellung Wiederverwendbarkeit Bessere Sprachunterstützung Vollwertige Programmiersprache Ganzheitlicher Ansatz von DB bis Web auch kostenlos: Webmatrix Synergieeffekte durch Kombinationen Sharepoint Portal-Server Content-Management-Server Windows-Server-Dienste Web Technologies mit ASP.NET STC 02. – 03. Juni 2004

52 Fragen Vielen Dank für die Aufmerksamkeit! Haben Sie noch Fragen?
Web Technologies mit ASP.NET STC 02. – 03. Juni 2004

53 Wie geht es weiter auf der STC…?
Heute 16: :30 Workshop „VisualStudio .NET Windows Forms und Web Forms“ (Andreas Heil) 17:00 – 18:00 „SharePoint Portal Server Development“ (Martin Saternus) Nachtwanderung Morgen 09: :00 Workshop „ADO.NET“ (Torsten Weber & Rolf Kluge) 10:30 – 11:30 „ASP.NET für Fortgeschrittene“ (Holger Schwichtenberg) 11: :30 Workshop „ASP.NET und Webservices“ (Torsten Weber & Rolf Kluge) Web Technologies mit ASP.NET STC 02. – 03. Juni 2004

54 Web Technologies mit ASP.NET
Links & Literatur Links: Bücher: ASP.NET Kochbuch mit C# - von Patrick A. Lorenz Microsoft ASP. NET Entwicklerbuch. von Holger Schwichtenberg Web Technologies mit ASP.NET STC 02. – 03. Juni 2004


Herunterladen ppt "Web Technologies mit ASP.NET"

Ähnliche Präsentationen


Google-Anzeigen