1 Softwareentwicklung mit.NET Teil 3 ASP.NET Web Forms Dr. Ralph Zeller.

Slides:



Advertisements
Ähnliche Präsentationen
Be.as WEB Technologie
Advertisements

Was gibt´s neues im Bereich Sicherheit
Semesterarbeit von Dieter Lorenz, Sebastian Galenski, Stephan Bury
Java-Servlets Gliederung: Allgemeine Informationen zu Servlets
Datenbankanbindung mit ASP Wilhelm-Schickard-Schule Tübingen
ASP.NET Tips & Tricks Uwe Baumann
ASP.NET Überblick und technischer Einstieg
SPS / WSS Entwicklung Martin Saternus Technical Student Consultant Microsoft Deutschland GmbH
Kurze Einführung in ASP
Seminar Internetdienste Web 2.0 und Rich Internet Applications (RIA) JavaFX Rainer Scholz.
Datenbankzugriff im WWW (Kommerzielle Systeme)
NATURAL Web-Integration 1 / 27/28-Feb-98 TST NATURAL Web-Integration Arbeitskreis NATURAL Süd Theo Straeten SAG Systemhaus GmbH Technologieberater Stuttgart.
Seminar: XML für Fortgeschrittene Referent: Katrin Apel
Stefanie Selzer - Pascal Busch - Michael Kropiwoda
Java: Objektorientierte Programmierung
FH-Hof Servlets Richard Göbel. FH-Hof Konzept Servlets werden auf der Server-Seite durch ein Formular aufgerufen werten die Eingaben aus einem Formular.
Java: Grundlagen der Sprache
Seminar Sommersemester 2002 ASP.NET Andre Margousian.
Web 3.0 – Programmierung – Semantic Web / CIDOC CRM
Datenbankanbindung mit ASP Wilhelm-Schickard-Schule Tübingen
Oracle PL/SQL Server Pages (PSP). © Prof. T. Kudraß, HTWK Leipzig Grundidee: PSP – Internet-Seiten mit dynamischer Präsentation von Inhalten durch Einsatz.
Struts Seminar Javabasierte Webanwendungen. Tobias Kutzler2 Überblick Historie Was ist Struts? Model Controller View Zusammenfassung.
Introducing the .NET Framework
Hänchen & Partner GmbH 1 Web-Anwendungen mit dem Jakarta Struts Framework 3.Juli 2003 Martin Burkhardt.
Web-Anwendungsentwicklung à la MVC. Übersicht Über Georg Heeg Ein industrielles Beispiel Web-Anwendungen aus Smalltalker-Sicht MVC für das Web Programmierdemo.
Erstellen von WebServices mit Visual FoxPro 9.0
Uwe Habermann Venelina Jordanova VFP Code in Silverlight Anwendungen ausführen.
Tobias Högel & Dennis Böck,
Seite Common Gateway Interface. Konzepte. Übersicht 1Einleitung 2Was ist CGI? 3Wozu wird CGI verwendet? 4Geschichtlicher Überblick 5Grundvoraussetzungen.
Björn Schmidt, Hoang Truong Nguyen
FH-Hof HTML - Einführung Richard Göbel. FH-Hof Komponenten des World Wide Webs WWW Browser HyperText Transfer Protocol (HTTP) via Internet WWW Server.
YouTube5 .0 Projektpräsentation
Welche Funktion hat die php.ini? -Beinhaltet wichtige Einstellungen für PHP. Genannt seien hier u.a. der Speicherort von Cookies, Parameter der Kompilierung,
Einführung Servlets/JSPs
Distributed Programming in.NET. Inhaltsverzeichnis 1) Einführung 2).NET Remoting 3) Web-Services 4) Vergleich.NET Remoting und Web- Services 5) Fazit.
Gegenstand EDV Thema: Informative Webseiten
Entwicklung verteilter Anwendungen I, WS 13/14 Prof. Dr. Herrad Schmidt WS 13/14 Kapitel 6 Folie 2 ASP.NET Einführung (1) Microsoft-Technologien zur Entwicklung.
Silverlight Eine Einführung. Agenda 1.Was ist Silverlight? 2.Die Silverlight Philosophie 3.Vorstellung des Szenarios 4.Einführendes Beispiel 5.Konzepte.
Die .NET Common Language Runtime
Die .NET Common Language Runtime
1 Frey Jan Krcmar Boris Bühler Stefan Frey Jan Krcmar Boris Bühler Semesterpräsentation 15. April 2003.
Entwicklung verteilter Anwendungen I, WS 13/14 Prof. Dr. Herrad Schmidt WS 13/14 Kapitel 12 Folie 2 Web Services (1)
Einführung / Geschichte Einführung / Geschichte Motivation Motivation Beispiel Beispiel Architektur / Komponenten Architektur / Komponenten Konfiguration.
SQL Server 2005 CLR-Integration
Consulting and Solutions.NET Vortragsreihe – Vorstellung der Referenten Happy Arts Software Markus Kämmerer IT-Erfahrung seit 1987,
Präsentation von Sonja Pathe
Basiswissen für Partner und interessierte Kunden Technologie.
Bedeutung von Internet-Technologien
Your name Bedeutung von Internet- Technologien Gruppe 1 Andreas Feuerstein Philipp Hochratner Christian Weinzinger.
Windows Presentation Foundation WS 2013/14 Prof. Dr. Herrad Schmidt
Windows Presentation Foundation, Vorlesung Wintersemester 2013/14 Prof. Dr. Herrad Schmidt WS 13/14 Kapitel 2 Folie 2 XAML (1) s.a.
Entwicklung verteilter Anwendungen II, SS 13 Prof. Dr. Herrad Schmidt SS 2013 Kapitel 5 Folie 2 Windows Communication Foundation (WCF) s.a.
Entwicklung verteilter Anwendungen II, SS 13 Prof. Dr. Herrad Schmidt SS 13 Kapitel 2 Folie 2 ASP.NET HTTP-Handler (1)
Entwicklung verteilter Anwendungen I, WS 13/14 Prof. Dr. Herrad Schmidt WS 13/14 Kapitel 9 Folie 2 ASP.NET Seitenübergänge
CGI (Common Gateway Interface)
Java Server Pages Sergej Keterling
Oliver Spritzendorfer Thomas Fekete
Agenda Rückblick 2. Aufbau der Software Benutzeroberfläche 4. Ausblick
Torque in Turbine Team 4 Josef Bohninger Thomas Lindenhofer
Datenanbindung in Webapplikationen
Mag. Andreas Starzer weloveIT – EDV Dienstleistungen
Aufzeichnung von Usability-Daten im www. Client-Side Log : automatisch (maschinell) generiertes Protokoll Client : Rechner mit dem Browser des Users Server:
Drucken mit XSL-FO DaimlerChrysler  Drucken von Webseiten
prof. dr. dieter steinmannfachhochschule trier © prof. dr. dieter steinmann Folie 1 vom Montag, 30. März 2015.
->Prinzip ->Systeme ->Peer – to – Peer
Datenbanken im Web 1.
Microsoft.NET - Plattform Kurzer Überblick Vergleich mit Java Von Thomas Zahn Januar 2001.
Java Server Pages Technologie zur Erzeugung dynamischer Webseiten basierend auf Java-Servlets Blockseminar Wintersemester 2001/2002Jochen Pfeiffer Seite.
Dynamische Webseiten CGI & co. © CGI - Lösung für alle ? Ja CGI kann alles tun, was man für Anwendungen braucht flexibel (beliebige.
 Präsentation transkript:

1 Softwareentwicklung mit.NET Teil 3 ASP.NET Web Forms Dr. Ralph Zeller

2 Web Applikationen ASP.NET definiert eine Web Applikation als die Summe aller Dateien, Seiten, Handler, Module und Executables, die in einem bestimmten virtuellen Verzeichnis auf einem Web Server aufgerufen und ausgeführt werden. Verteilte Applikationen Internet Web Service Web Form PräsentationMiddle TierDatenbank

3 Alles begann mit HTML Beispiel 1: HTML Web Form

4 HTML Know how Englisch: Peachpit Press, 2000 Deutsch: Markt und Technik, 2001 Online: Buch: Elizabeth Castro

5 Alt: Active Server Pages Was sind ASP? Server Side Scripting Datei enthält HTML und Script Code Ausführung durch HTTP Aufruf Script Code wird am Server interpretiert Simple ASP Page Today's date is The current time is Simple ASP Page Today's date is The current time is

6 Alt: Active Server Pages Was kann ich mit ASP machen? Einfach und schnell Web Applikationen erstellen Web Inhalte dynamisch erzeugen Client Side Scripting zur Validierung Funktionalität durch COM Komponenten erweitern (z.B. Datenbankzugriff)

7 Formulare in ASP Beispiel 2: ASP Darlehensrechner

8 ASP Hypothekar Rechner method = "post" Formulardaten werden im HTTP Header übertragen action = "Hcalc.asp" Weist auf die ASP Seite, die durch drücken von Berechnen aufgerufen wird Postback Scriptobjekte werden automatisch mit den Werten in den Eingabefeldern initialisiert. Eingabe verschwindet Zustand der Eingabefelder wird nicht am Server gespeichert

9 Formulare in ASP Beispiel 3: ASP Darlehensrechner v2

10 Neu: ASP.NET Pattform für Web Applikationen Neues Ausführungsmodell Web Client Betriebssystem ASP.NET Applikationen IIS.NET Framework

11 ASP.NET Konzept Trennung von UI und Programmcode Basiert auf.NET Framework Code wird beim ersten Aufruf einer Seite compiliert Zustandsmanagement Mehrer Programmiersprachen können verwendet werden Dateiupdate bei laufenden Serverbetrieb

12 WebControls Beispiel 4: ASP.NET Darlehensrechner

13 ASP.NET Darleh.rechner Web Controls ersetzen Tags Web Controls laufen am Server (RunAt = "server") Server Side Scripts können Web Controls durch ihre ID direkt referenzieren (ID = "Kapital") C# Script Verbindung zum Script über OnClick Attribut Input Daten werden direkt aus Web Control gelesen Output wird an ein Label Control übergeben Tag hat kein Methoden oder Action Attribut Kein extra Code für Postback

14 ASP.NET Anwendungen Eine Anwendung besteht aus ASP.NET Pages.aspx Files mit WebForms.cs,.vb, … Files mit Code Komponenten (Assemblies) Konfigurationsdateien web.config global.asax Sämtliche Elemente einer Anwendung müssen sich in einem Verzeichnis befinden

15 am1.aspx web.config C:\Inetpub\wwwroot global.asaxweb.config rc2.aspxrc1.aspx \MyApp1 \MyApp2 assembly1.dllassembly2.dll \bin Aufbau einer Anwendung

16 Konfiguration App Settings Datei web.config im root-Verzeichnis globale Standardeinstellungen, die für alle ASP.NET Anwendungen gelten, befinden sich in folgender Datei \Windows\Microsoft.NET\Framework\ \ config\machine.config App Events Datei global.asax im root-Verzeichnis

17 Events Events strukturieren Programmablauf Vereinfacht die Organisation des Codes Vermeidet Spagetticode Code kann auf Page Events reagieren Page_Load Page_Unload Code kann auf Control Events reagieren Button1_Click Textbox1_Changed

18 Event Modell Client feuert Event – Server verarbeitet Event Verbindung zwischen Event und Handler durch "On" vor Eventnamen und Verwendung als Attribut Server Web Client Parse Message Event Event Handler Event Message Antwort Aufruf Event Handler // ListBox ruft bei jeder Änderung SelectedIndexChanged auf <asp:ListBox ID="MyListBox" RunAt="server" OnSelectedIndexChanged="OnNewSelection" /> // ListBox ruft bei jeder Änderung SelectedIndexChanged auf <asp:ListBox ID="MyListBox" RunAt="server" OnSelectedIndexChanged="OnNewSelection" />

19 Lebenszyklus einer Seite Page_Load Page_Unload Textbox1_Changed Button1_Click Control Events 1. Change Events 2. Action Events

20 Page_Load Event void Page_Load (Object sender, EventArgs e) { // ISPostBack ist ein Property der Page Klasse if (IsPostBack == false) // Hier wird z.B. eine Datenbank abgefragt, // mit dessen Werten einige Controls der Seite // initialisiert werden. } void Page_Load (Object sender, EventArgs e) { // ISPostBack ist ein Property der Page Klasse if (IsPostBack == false) // Hier wird z.B. eine Datenbank abgefragt, // mit dessen Werten einige Controls der Seite // initialisiert werden. } Wird bei jeder neuen Instanz der Seite ausgelöst Alle Input Werte sind bereits vorhanden Noch keine Ausgabe an den Client erfolgt

21 Code innerhalb der Tags wird in.cs Datei ausgelaget.aspx File enthält keinen Code Page Direktive verbindet.aspx und.cs Datei Diese Technik nennt man Code-behind Code und Daten trennen Code-behind

22 Code-behind Beispiel 5: ASP.NET Darleh.rechner 2

23 Server Controls ASP.NET enthält 45 Server Controls diese sind nach logischen Kriterien gruppiert HTML Controls Controls / Properties entsprechen 1:1 HTML Elementen Web Controls Grundlegende Controls List Controls Rich Controls Validation Controls

24 HTML Controls abgeleitet von System.Web.UI.HtmlControls Unterschied zu normalen HTML Tags HTML Controls,,,,,,,, // normales HTML input Feld // HTML Control // normales HTML input Feld // HTML Control

25 Web Controls Abstrakte Controls Kein 1:1 Mapping zu HTML Server Controls abgeleitet von System.Web.UI.WebControls umfangreiche Funktionalität z.B. Calendar Control Automatische Anpassung an den Browser z.B. enthält das RequiredFieldValidator Control Client-seitiges Scripting, wenn der Browser das unterstützt einheitliches Objektmodell eventgesteuertes Programmiermodell

26 Rich Controls Beispiel 6: Kalender Demo

27 Validation Controls Beispiel 7: ASP.NET Darleh.rechner 3

28 Custom Controls Selbstentwickelte, compilerte Web Controls 1.Mit Internet Service Manager ein Virtuelles Verzeichnis \Inetpub\wwwroot\ erstellen 2.Code übersetzen csc.exe /target:library MyClass.cs 3.Filecopy in das bin-Verzeichnis der Anwendung copy MyClass.dll \Inetpub\wwwroot\ \bin 4..aspx File anlegen und Control benutzen

29 Custom Controls Beispiel 8: Hello World

30 User Controls Mit User Controls können Teile einer WebForm zu einem eigenständigen Control zusammengefasst werden Dadurch können wiederverwendbare UI Komponenten erstellt werden User Controls verhalten sich wie Objekte Properties, Felder, Events, Methoden Dateiendung ist.ascx

31 User Controls Beispiel 9: Login

32 Fragen? Uff...

33 Glossar API – Application Programming Interface: Definierte Programmierschnittstelle für den Zugriff auf Systemfunktionen IIS – Internet Information Server: Der Webserver von Microsoft ISAPI- Internet Server API: Mit dieser Schnittstelle können Erweiterungen für den IIS entwickelt werden. Solche Erweiterungen können nur mit C++ programmiert werden. Cookie: Kennung, die auf der Festplatte eines Benutzers abgelegt wird. Mit dieser Kennung kann eine Webseite herausfinden, ob dieser Benutzer die Seite zuvor schon besucht hat. Die Kennung wird auch Session ID genannt XML - eXtensible Markup Language: Textbasiertes, allgemeines Datenformat, das Grundregeln für den Aufbau eigener Datenformate definiert. XSL - XML Stylesheet Language: XML-basierte Sprache, mit der Transformationen von XML-Daten definiert werden können. CLR – Common Language Runtime: gemeinsame Laufzeitumgebung für alle.NET Anwendungen. MSIL – Microsoft Intermediate Language Managed Code: In der.NET Plattform wird kein nativer Code mehr erzeugt. Stattdessen generieren Compiler unter.NET eine Zwischensprache (MSIL), die dann unter Aufsicht der CLR bei Bedarf in nativen Code übersetzt und ausgeführt wird. Deshalb wird der von den Compilern erzeugte Code auch Managed Code genannt.