ASP.NET Überblick und technischer Einstieg

Slides:



Advertisements
Ähnliche Präsentationen
HTML5 Die Zukunft von OpenROAD
Advertisements

Was gibt´s neues im Bereich Sicherheit
Vorlesung: 1 Betriebliche Informationssysteme 2003 Prof. Dr. G. Hellberg Studiengang Informatik FHDW Vorlesung: Betriebliche Informationssysteme Teil3.
Datenbankanbindung mit ASP Wilhelm-Schickard-Schule Tübingen
Vorteile der Online-Produkte
SQL Server 2005.NET Integration Sebastian Weber Developer Evangelist Microsoft Deutschland GmbH.
Was ist neu in VS 2003 ? Ein Überblick. Bernd Marquardt Software & Consulting
SPS / WSS Entwicklung Martin Saternus Technical Student Consultant Microsoft Deutschland GmbH
Pflege der Internetdienste
Tomcat Web-Server installieren
NATURAL Web-Integration 1 / 27/28-Feb-98 TST NATURAL Web-Integration Arbeitskreis NATURAL Süd Theo Straeten SAG Systemhaus GmbH Technologieberater Stuttgart.
Stefanie Selzer - Pascal Busch - Michael Kropiwoda
Java: Grundlagen der Sprache
Seminar Sommersemester 2002 ASP.NET Andre Margousian.
XINDICE The Apache XML Project Name: Jacqueline Langhorst
Grundkurs Theoretische Informatik, Folie 2.1 © 2006 G. Vossen,K.-U. Witt Grundkurs Theoretische Informatik Kapitel 2 Gottfried Vossen Kurt-Ulrich Witt.
Datenbankanbindung mit ASP Wilhelm-Schickard-Schule Tübingen
Vorlesung: 1 Betriebliche Informationssysteme 2003 Prof. Dr. G. Hellberg Studiengang Informatik FHDW Vorlesung: Betriebliche Informationssysteme Teil2.
Tomcat (I) Ende 1999 Jakarta-Projekt von Apache, IBM und Sun gegründet
Technik Gestaltung Navigation Daten. Übersicht Client Webbrowser InternetServer.
PKJ 2005/1 Stefan Dissmann Rückblick auf 2005 Was zuletzt in 2005 vorgestellt wurde: Klassen mit Attributen, Methoden und Konstruktoren Referenzen auf.
PKJ 2005/1 Stefan Dissmann Zusammenfassung Bisher im Kurs erarbeitete Konzepte(1): Umgang mit einfachen Datentypen Umgang mit Feldern Umgang mit Referenzen.
Introducing the .NET Framework
Erstellen von WebServices mit Visual FoxPro 9.0
Uwe Habermann Venelina Jordanova VFP Code in Silverlight Anwendungen ausführen.
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,
Coccon das Web-XML-Publishing System Thomas Haller.
Distributed Programming in.NET. Inhaltsverzeichnis 1) Einführung 2).NET Remoting 3) Web-Services 4) Vergleich.NET Remoting und Web- Services 5) Fazit.
20:00.
„Küsse deine Freunde“ – FlexKom-App teilen
1 Softwareentwicklung mit.NET Teil 3 ASP.NET Web Forms Dr. Ralph Zeller.
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.
Die .NET Common Language Runtime
Die .NET Common Language Runtime
Entwicklung verteilter Anwendungen I, WS 13/14 Prof. Dr. Herrad Schmidt WS 13/14 Kapitel 12 Folie 2 Web Services (1)
Entwicklung verteilter Anwendungen I, WS 13/14 Prof. Dr. Herrad Schmidt WS 13/14 Kapitel 11 Folie 2 Microsoft Internet Information Services (IIS)
ArcGIS als WPS Server Aktueller Stand der Umsetzung
SQL Server 2005 CLR-Integration
Präsentation von Sonja Pathe
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 13 Kapitel 4 Folie 2 REST Web Services (1)
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
Analyse von Ablaufdiagrammen
HORIZONT 1 XINFO ® Das IT - Informationssystem PL/1 Scanner HORIZONT Software für Rechenzentren Garmischer Str. 8 D München Tel ++49(0)89 / 540.
Oliver Spritzendorfer Thomas Fekete
Agenda Rückblick 2. Aufbau der Software Benutzeroberfläche 4. Ausblick
Datenanbindung in Webapplikationen
1 (C)2006, Hermann Knoll, HTW Chur, FHO Quadratische Reste Definitionen: Quadratischer Rest Quadratwurzel Anwendungen.
Neuerungen in Java 5/6/7. Stefan Bühler für InfoPoint Überblick Java 5 neue Sprachfeatures Erweiterungen Klassenbibliothek Java 6 Erweiterungen.
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:
Schutzvermerk nach DIN 34 beachten 20/05/14 Seite 1 Grundlagen XSoft Lösung :Logische Grundschaltung IEC-Grundlagen und logische Verknüpfungen.
prof. dr. dieter steinmannfachhochschule trier © prof. dr. dieter steinmann Folie 1 vom Montag, 30. März 2015.
Musterlösung IT-Struktur an Schulen © Zentrale Planungsgruppe Netze am Kultusministerium Baden-Württemberg Software-Verteilung mit ZENworks 4 Regionale.
Das IT - Informationssystem
Microsoft.NET InfoPoint 8. Juni 2005 Stefan Bühler.
1 Medienpädagogischer Forschungsverbund Südwest KIM-Studie 2014 Landesanstalt für Kommunikation Baden-Württemberg (LFK) Landeszentrale für Medien und Kommunikation.
Monatsbericht Ausgleichsenergiemarkt Gas – Oktober
Datenbanken im Web 1.
Webserver Apache & Xampp Referenten: Elena, Luziano und Sükran
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.
Microsoft Silverlight Autor: Christian Pirker. Inhalt Einführung Silverlight Einführung XAML Silverlight 1.0 und 1.1 Silverlight 2.0 Silverlight 3.0 Ausblick.
Patrick Richterich Lattwein GmbH Web Services Softwareentwicklung mit SOAP.
 Präsentation transkript:

ASP.NET Überblick und technischer Einstieg E3 - ASP.NET - Überblick und technischer Einstieg ASP.NET Überblick und technischer Einstieg

Was ist neu? Code wird jetzt grundsätzlich kompiliert! VB-Script ist (endlich) abgeschafft! Die Metabase ist abgeschafft! WebForms WebServices Statemanagement Servererweiterungen ohne ISAPI ...

E3 - ASP.NET - Überblick und technischer Einstieg ASP.NET Klassen System.Web Services UI Description HtmlControls Discovery WebControls Protocols Caching Security Configuration SessionState

Das ASP-Prinzip ASP-Datei ASP.DLL Server interpretieren HTML Browser

Das ASP.NET-Prinzip ASPX-Datei XSPISAPI.DLL Server gen<xx>.vb .NET Klasse erstellen gen<xx>.vb kompilieren Common Language Runtime gen<xx>.DLL Controls rendern HTML Browser

ASP.NET in der Übersicht E3 - ASP.NET - Überblick und technischer Einstieg ASP.NET in der Übersicht app.aspx <HTML> <script> … </script> </HTML> app.asmx class X { [WebMethod] public int method1() { … } } HTTP SOAP IIS WebForms WebServices Common Language Runtime

E3 - ASP.NET - Überblick und technischer Einstieg WebServices Einfaches Programmiermodell Erstellen Sie eine ASMX-Datei, die eine Klasse mit den Methoden enthält, die Sie zur Verfügung stellen möchten Das Hinzufügen des Attributs WebMethod zu einer Public-Methode macht sie automatisch zu einem WebService ASP.NET macht den “Rest” Erzeugen der Service-Beschreibung als WSDL-Datei (WebService Description Language) Compile on demand

WebServices

WebForms Keine Scriptsprachen mehr! Verwenden „echter“ Sprachen: VB.NET, C#, ... Seite wird beim ersten Aufruf komplett auf dem Server kompiliert Server sendet dann die kompilierte Seite als HTML an den Browser Seiten können serverseitige UI-Controls verwenden Diese Controls werden WebControls genannt

WebControls Erkennbar am Zusatz runat="server" Erzeugen serverseitig HTML 3.2-konformen Output Zugriff auf Control-Eigenschaften anstelle eines x-fachen "Request.<Controlname>" Konsistenter Code: z.B.: <asp:TextBox runat="server"> <asp:TextBox TextBoxMode="Password"> <asp:TextBox Rows="5"> Einheitliches Objektmodell Eventgesteuertes Programmiermodell VB for the Web

WebControls WebControls merken sich Ihren Zustand (Viewstate) nach einem POST stehen die eingegebenen Werte automatisch wieder in den Controls realisiert über ein verstecktes Feld im HTML-Code, den der Server generiert Controls können zusammengesetzt werden Einfaches Beispiel 2 Textfelder für die Eingabe von Vor- und Nachname einer Person

WebControls

E3 - ASP.NET - Überblick und technischer Einstieg Das DataGrid Control Funktioniert wie das DataGrid Control in VB bindet Daten aus einer Datenquelle an das Control serverseitig wird auf der Basis der Daten eine HTML-Tabelle erstellt und an den Browser geschickt Aussehen der HTML-Tabelle kann über Templates angepasst werden

DataGrid Control

E3 - ASP.NET - Überblick und technischer Einstieg HTML und Code trennen Code übersetzen csc.exe /target:library MyClass.cs vbc.exe /target:library MyClass.vb ASPX-Datei um folgende Zeile ergänzen Diese Technik nennt man CodeBehind! <%@Page Inherits="MyClass" Src="MyClass.cs"%>

CodeBehind

E3 - ASP.NET - Überblick und technischer Einstieg ASP.NET Anwendungen Eine Anwendung besteht aus ASP.NET Pages WebForms WebServices Komponenten (assemblies) Konfigurationsdateien config.web global.asax Sämtliche Elemente einer Anwendung müssen sich in einem Verzeichnis befinden

Aufbau einer Anwendung E3 - ASP.NET - Überblick und technischer Einstieg Aufbau einer Anwendung C:\inetpub\applications \MyApp1 \MyApp2 rc1.aspx rc2.aspx \bin am1.aspx config.web global.asax config.web assembly1.dll assembly2.dll

ASP und ASP.NET Beide Anwendungsarten können parallel betrieben werden Die Anwendungsmigration erfordert Änderungen Scripte müssen innerhalb des Blocks <script runat=server> … </script> deklariert werden Syntaktische Änderungen in VB.NET gegenüber VB-Script

ASP und ASP.NET Von VB-Script nach VB.NET Parameter sind standardmäßig als ByVal deklariert Die Schlüsselwörter SET und LET sind nicht mehr vorhanden Es gibt keine Default-Eigenschaften mehr RS("Name").Value anstelle von RS("Name")

E3 - ASP.NET - Überblick und technischer Einstieg Installation ASP.NET Anwendungen sind grundsätzlich voneinander isoliert Verschiedene Anwendungen können parallel mit verschiedenen Versionen einer Komponente arbeiten Installation einer ASP.NET Anwendung durch Erstellen eines Verzeichnisses mit anschließendem Filecopy Keine Registryänderungen (REGSVR32) Keine Änderungen in der IIS-Metabase Kein Neustart des Webservers Uninstall Verzeichnis löschen

Komponente installieren E3 - ASP.NET - Überblick und technischer Einstieg Komponente installieren Code übersetzen csc.exe /target:library MyClass.cs vbc.exe /target:library MyClass.vb Filecopy in das bin-Verzeichnis der Anwendung copy MyClass.dll \wwwroot\<appname>\bin\ Klasse anlegen und benutzen

E3 - ASP.NET - Überblick und technischer Einstieg Komponente entfernen Entfernen der Komponente aus dem bin-Verzeichnis der Anwendung del MyClass.dll

Komponente aktualisieren E3 - ASP.NET - Überblick und technischer Einstieg Komponente aktualisieren Filecopy der Komponente in das bin-Verzeichnis der Anwendung Aufrufen dieser Komponente innerhalb einer ASP.NET Anwendung Ändern Sie den Sourcecode und erstellen Sie eine neue Version der Komponente Führen Sie erneut ein Filecopy der Komponente in das bin-Verzeichnis der Anwendung aus

Komponenten

E3 - ASP.NET - Überblick und technischer Einstieg Konfiguration Konfigurationsdaten werden in XML-Dateien abgelegt “human-readable and human-writable” Keine speziellen APIs mehr (IIS-Metabase) Einfaches Handling für Entwickler und Administratoren Datei CONFIG.WEB

E3 - ASP.NET - Überblick und technischer Einstieg Konfiguration App Settings Datei CONFIG.WEB im root-Verzeichnis global gültige Standardeinstellungen sind in folgender Datei zu finden <windir>\Microsoft.NET\Framework\<version>\config.web App Events Datei GLOBAL.ASAX im root-Verzeichnis

E3 - ASP.NET - Überblick und technischer Einstieg App Settings CONFIG.WEB im root-Verzeichnis erstellen Zugriff auf diese Daten mit folgendem Code Dim Config as HashTable Config = Context.GetConfig("appsettings") Dim MyDsn = Config("dsn") <configuration> <appsettings> <add key="dsn" value="localhost;uid=sa;pwd=;Database=foo"/> </appsettings> </configuration>

E3 - ASP.NET - Überblick und technischer Einstieg App Events Bei einer unbehandelten Exception wird das Event Application_Error gefeuert Zugriff auf Request-Objekt vorhanden Zugriff auf Exception-Objekt vorhanden Mögliche Vorgehensweise Eintrag in Eventlog erstellen Einsatz der Framework-Klassen für den Zugriff auf das Eventlog

E3 - ASP.NET - Überblick und technischer Einstieg Settings und Events

E3 - ASP.NET - Überblick und technischer Einstieg Page Tracing Folgende Direktive am Seitenanfang einfügen <%@ Page Trace="True" %> Trace-Aufrufe an den gewünschten Stellen hinzufügen Trace.Write("MyApp", "Button Clicked") Trace.Warn("MyApp", "Value: " + value) Seite mit dem Browser aufrufen

E3 - ASP.NET - Überblick und technischer Einstieg App Tracing CONFIG.WEB im root-Verzeichnis erstellen Zugriff auf die Aufzeichnungen per URL (à spezieller HTTP-Handler) http://localhost/approot/Trace.axd <configuration> <trace enabled="true" requestlimit="10"/> </configuration>

E3 - ASP.NET - Überblick und technischer Einstieg Tracing

E3 - ASP.NET - Überblick und technischer Einstieg Debugging CONFIG.WEB im root-Verzeichnis erstellen Debugger einbinden (-> “attachen”) Breakpoints setzen Seite bzw. Service im Browser aufrufen <configuration> <compilation debugmode="true"/> </configuration>

E3 - ASP.NET - Überblick und technischer Einstieg Debugging

Statemanagement Cookieless session External Session State Session ID wird in die URL eingebaut Cookie auf der Clientseite nicht mehr notwendig passiert automatisch, Code ist nicht erforderlich Bei statischen und dynamisch generierten Seiten External Session State Statusinformationen werden extern gespeichert Crash-Resistent, überlebt Neustarts

E3 - ASP.NET - Überblick und technischer Einstieg Cookieless Sessions Für Session IDs werden keine Cookies mehr benötigt Mitführen der Session ID in URL Codeänderungen sind nicht erforderlich

E3 - ASP.NET - Überblick und technischer Einstieg Cookieless Sessions CONFIG.WEB im root-Verzeichnis erstellen Folgende Zeilen hinzufügen: <configuration> <sessionstate cookieless="true"/> </configuration>

E3 - ASP.NET - Überblick und technischer Einstieg Cookieless Sessions

External Session State E3 - ASP.NET - Überblick und technischer Einstieg External Session State ASP State Service auf dem Rechner starten net start aspstate CONFIG.WEB im root-Verzeichnis der Anwendung erstellen und diesen Rechner referenzieren <configuration> <sessionstate inproc="false" server="localhost" /> </configuration>

External Session State E3 - ASP.NET - Überblick und technischer Einstieg External Session State

Host (IIS, Internet Explorer) ASP.NET Architektur Unmanaged Code HTTP Request Host (IIS, Internet Explorer) HTTP Runtime Managed Code HTTP Module HTTP Module HTTP Handler ...

E3 - ASP.NET - Überblick und technischer Einstieg HTTP Handler Funktionalität von ASP.NET an spezielle Anforderungen anpassen möglich über das "Einklinken" in den Request-Mechanismus Vergleichbar mit ISAPI-Extensions einfach zu implemetieren Diesen Code nennt man HTTP Handler Beispiel für einen HTTP Handler Transformieren von Dokumenten per XSL

E3 - ASP.NET - Überblick und technischer Einstieg HTTP Handler Handler-Komponente erstellen Komponente in das bin-Verzeichnis der Anwendung kopieren Den HTTP-Handler der Anwendung per CONFIG.WEB bekannt machen <configuration> <httphandlers> <add verb="*" path="*.bar" type="class,assembly"/> </httphandlers> </configuration>

E3 - ASP.NET - Überblick und technischer Einstieg HTTP Handler

E3 - ASP.NET - Überblick und technischer Einstieg Fragen?

E3 - ASP.NET - Überblick und technischer Einstieg Mehr Informationen MSDN online www.microsoft.com/germany/msdn www.microsoft.com/net ASP.NET Quickstart Samples, Samples, Samples, ... ASP.NET Sites www.aspng.com www.asp101.com www.IBuySpy.com Artikel im VBA-Magazin 1/2001

E3 - ASP.NET - Überblick und technischer Einstieg 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.