ASP.NET und XML Web Services 1 Microsoft .NET und C# ASP.NET XML Web Services Softwareentwicklung mit MS.NET und C# Robert Bruckner 27.11.2002 2 Robert Bruckner Agenda ASP ASP.NET: Überblick ASP.NET: .ashx, .aspx, Events XML Web Services Erstellung Verwendung 3 Robert Bruckner 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äsentation Middle Tier Datenbank 4 Robert Bruckner CGI vs. ASP CGI ist plattformunabhängig, offener Standard Rapid Application Development (RAD) Tools für ASP (Active Server Pages) verfügbar ASP arbeitet multithreaded – ermöglicht hohe Anzahl an concurrent users Entwickler müssen sich intensiv mit Server-Technologien (IIS, MTS, MS-SQL) auseinandersetzen, um ASP einzusetzen
20
Embed
Präsentation Middle Tier Datenbank Internet Web Servicebruckner/dotnet/VO3_ASP_WS.pdf · Server Controls ASP.NET enthält 45 Server Controls ... •Grundlegende Controls •List
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
ASP.NET und XML Web Services
1
Microsoft .NET und C#
ASP.NETXML Web Services
Softwareentwicklung mit
MS.NET und C#
Robert Bruckner
27.11.2002
2Robert Bruckner
Agenda
�ASP
�ASP.NET: Überblick
�ASP.NET: .ashx, .aspx, Events
�XML Web Services
�Erstellung
�Verwendung
3Robert Bruckner
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 ServiceWeb Form
Präsentation Middle Tier Datenbank
4Robert Bruckner
CGI vs. ASP
� CGI ist plattformunabhängig, offener Standard
� Rapid Application Development (RAD) Toolsfür ASP (Active Server Pages) verfügbar
� ASP arbeitet multithreaded – ermöglicht hoheAnzahl an concurrent users
� Entwickler müssen sich intensiv mit Server-Technologien (IIS, MTS, MS-SQL) auseinandersetzen, um ASP einzusetzen
ASP.NET und XML Web Services
2
Microsoft .NET und C#
5Robert Bruckner
Alt: Active Server Pages
� Server Side Scripting
� Datei enthält HTML und Script Code<%@ Language="VBScript" %>
<html>
<head>
<title>Simple ASP Page</title>
</head>
<body>
<h1>Today's date is <%= Date %></h1><p>
<h1>The current time is <%= Time %></h1>
</body>
</html>
� Ausführung durch HTTP Aufruf
� Script Code wird am Server interpretiert
6Robert Bruckner
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)
7Robert Bruckner
Neu: ASP.NET
�Plattform für Web Applikationen
�Neues Ausführungsmodell
Web Client
Betriebssystem
ASP.NET
ApplikationenIIS
.NET
Framework
8Robert Bruckner
ASP.NET
System.Web
(ASP.NET)
Web Browser
HTML
Web Service Client
XML
Multimedia Client
MP3/PNG/WMV
HT
TP
Runtim
e (IIS
/ISA
PI)
ASP.NET und XML Web Services
3
Microsoft .NET und C#
9Robert Bruckner
ASP.NET Konzept
�Trennung von UI und Programmcode
�Basiert auf .NET Framework
�Code wird beim ersten Aufruf einer Seite compiliert
�Zustandsmanagement
�Mehrere Programmiersprachen können verwendet werden
�Dateiupdate bei laufenden Serverbetrieb (Versionierungskonzeptvon .NET CLR!)
10Robert Bruckner
Demo
Beispiel 12: ASP.NET Darlehensrechner
11Robert Bruckner
ASP.NET Konzept
�ASP.NET verwendet die CLR um das ISAPI/ASP-Architektur von IIS zu ersetzen
�Request-Dispatch: ASPNET_ISAPI.DLL
�Handlers laufen in ASP.NET Worker Process: ASPNET_WP.EXE
�Neues Sessionmanagement
12Robert Bruckner
ASP.NET Architektur
INETINFO.EXE
(IIS5 or earlier)
ASPNET_WP.EXE
(ASP.NET Worker Process)
ASPNET_STATE.EXE
(ASP.NET Session Process)
ASPNET_ISAPI.DLL
(ASP.NET
ISAPI
Extension)
"Ted"33
Your
HTTP
Request
Handler
s2"Don"26
s1"Bob"21
s3
ASP.NET und XML Web Services
4
Microsoft .NET und C#
13Robert Bruckner
ASP.NET Anwendungen
� Eine Anwendung besteht aus• Webhandler
• ASP.NET Pages
• .aspx Files mit WebForms
• .cs, .vb, … Files mit Code
• Komponenten (Assemblies)
• Konfigurationsdateien
• config.web
• global.asax
� Sämtliche Elemente einer Anwendung müssen sich in einem Verzeichnis befinden
14Robert Bruckner
am1.ashx
config.web
C:\Inetpub\wwwroot
global.asax config.web
rc2.aspxrc1.aspx
\MyApp1 \MyApp2
assembly1.dll assembly2.dll
\bin
Aufbau einer Anwendung
15Robert Bruckner
Konfiguration
� App Settings
• Datei Web.config im root-Verzeichnis
• globale Standardeinstellungen, die für alleASP.NET Anwendungen gelten, befinden sich in folgender Datei• \Windows\Microsoft.NET\Framework\<version>\config\Mac
// IsPostBack ist ein Property der Page Klasseif (IsPostBack == false) {// Hier wird z.B. eine Datenbank abgefragt,// mit dessen Werten einige Controls der Seite// initialisiert werden.
}}
</script>
36Robert Bruckner
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
ASP.NET und XML Web Services
10
Microsoft .NET und C#
37Robert Bruckner
Demo
Beispiel 15: Calendar (rich control)
38Robert Bruckner
Demo
Beispiel 16: Darlehensrechner (validation controls)
39Robert Bruckner
HTML Controls
� abgeleitet von System.Web.UI.HtmlControls
� Unterschied zu normalen HTML Tags<input type="text"> // normales HTML input Feld<input type="text" runat="server" /> // HTML Control
� HTML Controls• <a>, <img>, <form>
• <table>, <tr>, <td>, <th>
• <select>, <textarea>, < input type=button>,
• <input type=text>, <input type=file>,
• <input type=check>, <input type=button>,
• <input type=radio>, <input type=hidden>
40Robert Bruckner
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
ASP.NET und XML Web Services
11
Microsoft .NET und C#
41Robert Bruckner
Custom Controls
� Selbstentwickelte, compilierte Web Controls
� Mit Internet Service Manager ein Virtuelles Verzeichnis \Inetpub\wwwroot\<appname>erstellen