Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

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

Ähnliche Präsentationen


Präsentation zum Thema: "Web Technologies mit ASP.NET STC 02. – 03. Juni 2004 1 / 54 Web Technologies mit ASP.NET Thorsten Planeth (Microsoft Student Partner, MCP)"—  Präsentation transkript:

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

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

3 Web Technologies mit ASP.NET STC 02. – 03. Juni 2004 3 / 54Einleitung 1.Grundlagen Web 2.HTTP-Response 3.Kurzübersicht 4.Einordnung in die Architektur EinleitungASP.NETEreignisseDatenbindungState Management

4 Web Technologies mit ASP.NET STC 02. – 03. Juni 2004 4 / 54 1. Grundlagen Web 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 ASP.NET IIS Windows 2003 Server Internet EinleitungASP.NETEreignisseDatenbindungState Management

5 Web Technologies mit ASP.NET STC 02. – 03. Juni 2004 5 / 54 ASP.NET-Anwendung 2. HTTP-Response ASP.NET-Engine PHP-EngineISAPI-Engine Internet Information Server Internet Security and Acceleration Server Windows 2003 Server Webbrowser EinleitungASP.NETEreignisseDatenbindungState Management

6 Web Technologies mit ASP.NET STC 02. – 03. Juni 2004 6 / 54 3. Kurzübersicht Client Web-Server Browser Client-Software Webanwendung Webservice EinleitungASP.NETEreignisseDatenbindungState Management

7 Web Technologies mit ASP.NET STC 02. – 03. Juni 2004 7 / 54 4. Einordnung in die Architektur GUIWin-GUIASP.NET Webanwendungen Webservice BusinesslogikC#, VB.NET etc… DataaccessADO.NET DatenbankSQL Server, MSDE, (Access) EinleitungASP.NETEreignisseDatenbindungState Management

8 Web Technologies mit ASP.NET STC 02. – 03. Juni 2004 8 / 54ASP.NET 1.Demo (1) 2.Namespace 3.ASP.NET Web Forms 4.Teile einer ASP.NET Web-Form 5.Das ASP.NET Prinzip 6.Trennung von Form und Funktion 7.ASP.NET Server Controls 8.Standard ASP.NET Controls 9.Demo (2) EinleitungASP.NETEreignisseDatenbindungState Management

9 Web Technologies mit ASP.NET STC 02. – 03. Juni 2004 9 / 54 1. Demo ASP.NET-Webanwendung Besondere Dateitypen –Web.config –Global.asax –Webform (Endung *.aspx) EinleitungASP.NETEreignisseDatenbindungState Management

10 Web Technologies mit ASP.NET STC 02. – 03. Juni 2004 10 / 54 2. Namespace System.Web UI Design WebControls HtmlControls Services Configuration Description Discovery Protocols Caching Configuration Hosting Mail SessionState EinleitungASP.NETEreignisseDatenbindungState Management

11 Web Technologies mit ASP.NET STC 02. – 03. Juni 2004 11 / 54 3. ASP.NET Web Forms 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 EinleitungASP.NETEreignisseDatenbindungState Management

12 Web Technologies mit ASP.NET STC 02. – 03. Juni 2004 12 / 54 4. Teile einer ASP.NET Web Form Code Blocks Static Text Control Tags HTML Tags Directives Data Binding Expressions EinleitungASP.NETEreignisseDatenbindungState Management

13 Web Technologies mit ASP.NET STC 02. – 03. Juni 2004 13 / 54 5. Das ASP.NET Prinzip POST /site/form1.aspx..... INETINFO.EXE ASPNET_WP.EXE <%@ 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"; return "Hello"; }} Page Class ASPNET_ISAPI.DLL Assembly HTTP 1.1 200 OK..... Instanzieren Kompilieren form1.aspx form1_aspx.dll HTTP Request HTTP Response EinleitungASP.NETEreignisseDatenbindungState Management

14 Web Technologies mit ASP.NET STC 02. – 03. Juni 2004 14 / 54 6. Trennung von Form und Funktion Trennung der Funktionalität (Code) vom Layout hat viele Vorteile –In ASP.NET heißt dies Code Behind –Inherits Attribut der @Page 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 EinleitungASP.NETEreignisseDatenbindungState Management

15 Web Technologies mit ASP.NET STC 02. – 03. Juni 2004 15 / 54 7. ASP.NET Server Controls 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 EinleitungASP.NETEreignisseDatenbindungState Management

16 Web Technologies mit ASP.NET STC 02. – 03. Juni 2004 16 / 54 8. Standard ASP.NET Controls 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 EinleitungASP.NETEreignisseDatenbindungState Management

17 Web Technologies mit ASP.NET STC 02. – 03. Juni 2004 17 / 54 9. Demo Photoarchiv (1)… EinleitungASP.NETEreignisseDatenbindungState Management

18 Web Technologies mit ASP.NET STC 02. – 03. Juni 2004 18 / 54Ereignisse 1.Events 2.Abfolge der Events 3.Ereignisse bei einem ASP.NET-Aufruf EinleitungASP.NETEreignisseDatenbindungState Management

19 Web Technologies mit ASP.NET STC 02. – 03. Juni 2004 19 / 54 1. Ereignisse 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 EinleitungASP.NETEreignisseDatenbindungState Management

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

21 Web Technologies mit ASP.NET STC 02. – 03. Juni 2004 21 / 54 1.Application_Start (Anwendungsweit) 2.Application_BeginRequest (Aufrufweit) 3.Application_AuthenticateRequest (Aufrufweit) 4.Session_Start (Sessionweit) 5.Page_Init (Aufrufweit) 6.Page_Load (Aufrufweit) Programmausführung… ??? Application_Error (Aufrufweit) 7.Application_EndRequest (Aufrufweit) 8.Session_End (Sessionweit) 9.Application_End (Anwendungsweit) 3. Ereignisse bei einem ASP.NET-Aufruf EinleitungASP.NETEreignisseDatenbindungState Management

22 Web Technologies mit ASP.NET STC 02. – 03. Juni 2004 22 / 54 4. Demo Datei-Upload EinleitungASP.NETEreignisseDatenbindungState Management

23 Web Technologies mit ASP.NET STC 02. – 03. Juni 2004 23 / 54Datenbindung 1.Web Forms Datenbindung 2.Simple Binding 3.List Binding 4.Demo ASP.NETEreignisseDatenbindungState ManagementSicherheit

24 Web Technologies mit ASP.NET STC 02. – 03. Juni 2004 24 / 54 1. Web Forms Datenbindung 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 ASP.NETEreignisseDatenbindungState ManagementSicherheit

25 Web Technologies mit ASP.NET STC 02. – 03. Juni 2004 25 / 54 2. Simple Binding Syntax Binden an: –Eine Property der Seite –Rückgabewert einer Methode –Eine Property eines anderen Controls Schritt 1: Binding setzen –Deklarativ (in HTML): … /> Schritt 2: DataBind aufrufen Sub Page_Load(s As Object, e As EventArgs) Label1.DataBind() End Sub ASP.NETEreignisseDatenbindungState ManagementSicherheit

26 Web Technologies mit ASP.NET STC 02. – 03. Juni 2004 26 / 54 2. Simple Binding Beispiel Sub Page_Load(s as Object, e as EventArgs) Label1.DataBind() Label1.DataBind() End Sub /> /> ASP.NETEreignisseDatenbindungState ManagementSicherheit /> /> ASP.NETEreignisseDatenbindungState ManagementSicherheit.", "width": "800" }

27 Web Technologies mit ASP.NET STC 02. – 03. Juni 2004 27 / 54 3. List Binding Syntax Alle Klassen die IEnumerable implementieren sind Datenquellen Schritt 1: Binding setzen –Deklarativ: … /> –Imperativ: DataGrid1.DataSource = ds Schritt 2: DataBind aufrufen Sub Page_Load(s As Object, e As EventArgs) DataGrid1.DataBind() End Sub ASP.NETEreignisseDatenbindungState ManagementSicherheit

28 Web Technologies mit ASP.NET STC 02. – 03. Juni 2004 28 / 54 3. List Binding Datenquellen ADO.NET Klassen –DataReader –DataSet –auch DataTable, DataView Andere IEnumerable Typen –Arraylist –Array –Hashtable –… ASP.NETEreignisseDatenbindungState ManagementSicherheit

29 Web Technologies mit ASP.NET STC 02. – 03. Juni 2004 29 / 54 3. DataList Beispiel Sub Page_Load(s as Object, e as EventArgs) DataList1.DataSource = GetCustData() DataList1.DataSource = GetCustData() DataList1.DataBind() DataList1.DataBind() End Sub ASP.NETEreignisseDatenbindungState ManagementSicherheit ASP.NETEreignisseDatenbindungState ManagementSicherheit.", "width": "800" }

30 Web Technologies mit ASP.NET STC 02. – 03. Juni 2004 30 / 54 4. Demo Photoarchiv (2) ASP.NETEreignisseDatenbindungState ManagementSicherheit

31 Web Technologies mit ASP.NET STC 02. – 03. Juni 2004 31 / 54 State Management 1.State Management 2.Arten von State 3.ASP.NET Session Property 4.Cookieless Sessions 5.Session State im SQL Server 2000 EreignisseDatenbindungState ManagementSicherheitModularisierung

32 Web Technologies mit ASP.NET STC 02. – 03. Juni 2004 32 / 54 1. State Management HTTP ist verbindungslos Daher ist wichtig, wo Zustand gehalten wird ASP.NET unterstützt beim Verwalten EreignisseDatenbindungState ManagementSicherheitModularisierung

33 Web Technologies mit ASP.NET STC 02. – 03. Juni 2004 33 / 54 2. Arten von State 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 EreignisseDatenbindungState ManagementSicherheitModularisierung

34 Web Technologies mit ASP.NET STC 02. – 03. Juni 2004 34 / 54 3. ASP.NET Session Property 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 EreignisseDatenbindungState ManagementSicherheitModularisierung

35 Web Technologies mit ASP.NET STC 02. – 03. Juni 2004 35 / 54 4. Cookieless Sessions Über web.config File konfigurierbar configuration> Automatische Verwaltung EreignisseDatenbindungState ManagementSicherheitModularisierung

36 Web Technologies mit ASP.NET STC 02. – 03. Juni 2004 36 / 54 5. Demo Photoarchiv (3) EreignisseDatenbindungState ManagementSicherheitModularisierung

37 Web Technologies mit ASP.NET STC 02. – 03. Juni 2004 37 / 54Sicherheit 1.Authentifizierung Formularbasierte Authentifizierung Windows-Authentifizierung MS Passport 2.Autorisierung 3.Verschlüsselung State ManagementSicherheitModularisierungWebservices

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

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

40 Web Technologies mit ASP.NET STC 02. – 03. Juni 2004 40 / 54 1. Authentifizierung: Windows 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 State ManagementSicherheitModularisierungWebservices

41 Web Technologies mit ASP.NET STC 02. – 03. Juni 2004 41 / 54 1. Authentifizierung: MS Passport (1/3) Aus der Benutzersicht (1/2) Aus der Benutzersicht (1/2) Man hinterlegt einen Login und ein Passwort beim.NET Passport Service. Man hinterlegt einen Login und ein Passwort beim.NET Passport Service. Dazu kann man weitere Daten speichern, wie z.B. Postadresse 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. 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. Passport schickt dann an die Webseite eine Nachricht, ob der Benutzer auch das richtige Passwort wusste und ggf. die Adressdaten. State ManagementSicherheitModularisierungWebservices

42 Web Technologies mit ASP.NET STC 02. – 03. Juni 2004 42 / 54 1. Authentifizierung: MS Passport (2/3) Aus der Benutzersicht (2/2) Aus der Benutzersicht (2/2) Der Vorteil: Ich brauche bei einer Bestellung meine Adressdaten nicht ständig eintippen. 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 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. Der Nachteil: Knackt man den Account hat man Zugriff auf viele andere. State ManagementSicherheitModularisierungWebservices

43 Web Technologies mit ASP.NET STC 02. – 03. Juni 2004 43 / 54 1. Authentifizierung: MS Passport (3/3) 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 State ManagementSicherheitModularisierungWebservices

44 Web Technologies mit ASP.NET STC 02. – 03. Juni 2004 44 / 54 2. Autorisierung 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 State ManagementSicherheitModularisierungWebservices

45 Web Technologies mit ASP.NET STC 02. – 03. Juni 2004 45 / 54Demo Photoarchiv (4) State ManagementSicherheitModularisierungWebservices

46 Web Technologies mit ASP.NET STC 02. – 03. Juni 2004 46 / 54 3. Verschlüsselung 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)); State ManagementSicherheitModularisierungWebservices

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

48 Web Technologies mit ASP.NET STC 02. – 03. Juni 2004 48 / 54 Modularisierung (Demo) Photoarchiv (5) SicherheitZusammenfassungModularisierungWebservices

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

50 Web Technologies mit ASP.NET STC 02. – 03. Juni 2004 50 / 54 Webservices (Demo) Photoarchiv (6) SicherheitZusammenfassungModularisierungWebservices

51 Web Technologies mit ASP.NET STC 02. – 03. Juni 2004 51 / 54Zusammenfassung 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 SicherheitZusammenfassungModularisierungWebservices

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

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

54 Web Technologies mit ASP.NET STC 02. – 03. Juni 2004 54 / 54 Links & Literatur Links: –http://www.asp.net –http://msdn.microsoft.com/ –http://www.codezone.de/ –http://www.asp.net/webmatrix/download.aspx?tabindex= 4 Bücher: –ASP.NET Kochbuch mit C# - von Patrick A. Lorenz –Microsoft ASP. NET Entwicklerbuch. von Holger Schwichtenberg


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

Ähnliche Präsentationen


Google-Anzeigen