ASP.NET Tips & Tricks Uwe Baumann

Slides:



Advertisements
Ähnliche Präsentationen
Was gibt´s neues im Bereich Sicherheit
Advertisements

Datenbankanbindung mit ASP Wilhelm-Schickard-Schule Tübingen
Upgrade und Migration zu SQL Server 2005
Web-Entwicklung mit ASP.NET 2.0 und Visual Studio 2005 Uwe Baumann Marketing Manager Developer Tools Microsoft Deutschland GmbH Oliver Scheer Developer.
Web Matrix Project Kurzüberblick Dirk Primbs Technologieberater Developer Platform Strategy Group Microsoft Deutschland GmbH.
ASP.NET Episode 2 Uwe Baumann Technologieberater Microsoft Deutschland GmbH weblogs.asp.net/uweinside.
Kurze Einführung in ASP
Musterlösung IT-Struktur an Schulen © Zentrale Planungsgruppe Netze am Kultusministerium Baden-Württemberg Serverpflege Autor: Michael Stütz.
Datenbankanbindung mit ASP Wilhelm-Schickard-Schule Tübingen
Oracle WebServer - Einführung. © Prof. T. Kudraß, HTWK Leipzig Oracle Web Application Server HTML WebServer ® File system Static HTML PL/SQL Packages.
Werkzeuge und Softwareumgebung von Christian Michele.
Technik Gestaltung Navigation Daten. Übersicht Client Webbrowser InternetServer.
Einführung MySQL mit PHP
Erstellen von WebServices mit Visual FoxPro 9.0
Visual Extend Weitere Features deutschsprachige FoxPro User Group Uwe Habermann VFX 25 D.
Uwe Habermann VFX 10.0 Visual Extend Produktaktivierung.
Seite Common Gateway Interface. Konzepte. Übersicht 1Einleitung 2Was ist CGI? 3Wozu wird CGI verwendet? 4Geschichtlicher Überblick 5Grundvoraussetzungen.
YouTube5 .0 Projektpräsentation
von Julia Pfander und Katja Holzapfel E 12/2
Workshop: Active Directory
Migrieren eines Sharepoint Designer Workflows zu Visual Studio .NET
Ein Kessel Buntes Tipps & Tricks fürs digitale Chaos.
Informatik 1 Übung 8. NACHBESPRECHUNG Übung 8 Rekursion Existiert Weg von A nach B?
Entwicklung verteilter Anwendungen I, WS 13/14 Prof. Dr. Herrad Schmidt WS 13/14 Kapitel 12 Folie 2 Web Services (1)
SharePoint 2010 for Information Architects
Kostenlose Alternative zu Microsoft Office
SQL Server 2005 CLR-Integration
Präsentation von Sonja Pathe
Brand my SharePoint Grafische Gestaltung von SharePoint-Webseiten
PHP und MYSQL am Organisatorisches Der komplette Kurs im Schnelldurchgang Bewertung von wichtig und unwichtig Historisch Kulturwissenschaftliche.
Developer Day Office APPs entwicklen Simon Amrein Trivadis AG Die ersten Schritte in eine neue Office-Welt.
IFB Speyer Daniel Jonietz dj 2 XAMPP - Was ist das? Paket mit: – X – Apache (Webserver) – MySQL oder SQLite (Datenbank) – Perl (Skriptsprache) –
Windows Presentation Foundation, Vorlesung Wintersemester 2013/14 Prof. Dr. Herrad Schmidt WS 13/14 Kapitel 7 Folie 2 Styles (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 I, WS 13/14 Prof. Dr. Herrad Schmidt WS 13/14 Kapitel 5 Folie 2 ADO.NET s.a:
Windows Presentation Foundation, Vorlesung Wintersemester 2013/14 Prof. Dr. Herrad Schmidt WS 13/14 Kapitel 9 Folie 2 ADO.NET (1) Klassen für Zugriffe.
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 8 Folie 2 ASP.NET Zustandsverwaltung
Entwicklung verteilter Anwendungen I, WS 13/14 Prof. Dr. Herrad Schmidt WS 13/14 Kapitel 9 Folie 2 ASP.NET Seitenübergänge
Visual Extend CTableForm Builder deutschsprachige FoxPro User Group Uwe Habermann VFX 08 D.
Visual Extend CursorAdapter deutschsprachige FoxPro User Group Uwe Habermann VFX 18 D.
Visual Extend CDataFormPage Builder deutschsprachige FoxPro User Group Uwe Habermann VFX 09 D.
Visual Extend Lokalisierung deutschsprachige FoxPro User Group Uwe Habermann VFX 24 D.
Visual Extend Application Wizard deutschsprachige FoxPro User Group Uwe Habermann VFX 06 D.
Uwe Habermann Venelina Jordanova Professioneller Einstieg in eine neue Welt!
1 Nutzen Sie diese Powerpoint-Präsentation beim Selbstlernen oder in Veranstaltungen zur Einführung in das jeweilige Thema. Einführung Lernmodul Nutzungsbedingungen:
EP Media Group SiteKist CMS Version 6.9. ©2014 EP Media Group Internet:
… und was man damit machen kann.
Uwe Habermann Venelina Jordanova VFX in Cloud.
Agenda Rückblick 2. Aufbau der Software Benutzeroberfläche 4. Ausblick
Praktikum 27. Juni 2003 Projekt. Einführung Das Praktikum endet mit einem Projekt: Erstellt einen Kneipenführer! Am Ende wird der Kneipenführer vielleicht.
Dynamische Webseiten-Generierung
Wissen praktisch ablegen
Aufzeichnung von Usability-Daten im www. Client-Side Log : automatisch (maschinell) generiertes Protokoll Client : Rechner mit dem Browser des Users Server:
Präsentationsversion vom 13. März Bei der Beschaffung von Produkten e-Commerce Lösung ( B2C, B2B ) Preisvergleich bei statischen oder semistatischen.
Migration von VFP Anwendungen nach Silverlight Uwe Habermann Venelina Jordanova
7.-8. März 2013, Rosenheim Brand my SharePoint grafische Gestaltung von SharePoint 2013-Webseiten Fabian Moritz | MVP SharePoint Server.
Oracle Portal think fast. think simple. think smart. Dieter Lorenz, Christian Witt.
N ovell Directory Services Bernd Holzmann
WILLKOMMEN ZUM SOMMERKURS Kursthema: Frontend-Entwicklung für Webapplikationen M.Sc. Anna Prenzel, Sebastian Otto.
Loslegen mit Contrexx: In 10 Schritten zur professionellen Webseite. Juli 2012www.contrexx.com1 Autor: Nicolas Müller.
Die Programmiersprache Ruby Seminarvortrag von Lia Schulze Dephoff 1.
Identity Management.  Zentrale Begriffe und Probleme  Modellbildung  Methoden zur Authentisierung über HTTP  Technische Aspekte  Compliance  Hindernisse,
Neuigkeiten in Reporting Services 2016 Frank Geisler The box is back…
Entwicklung einer Webanwendung mittels HTML, ASP, C# und SQL am Beispiel einer Publikationsverwaltung Philipp Kühne Erstprüfer: Prof. Dr. Wilhelm.
File Objekt
ORACLE XE Bernd Tuba, Trier, Deutsche Post ITSolutions GmbH.
4 junge Schüler arbeiteten Stunden um Stunden an
 Präsentation transkript:

ASP.NET Tips & Tricks Uwe Baumann Technologieberater Developer Group Microsoft GmbH uwebaum@microsoft.com http://www.uwebaumann.de

Was Sie erwartet Nützliche Tips für den ASP.NET-Alltag Logon und Authentifizierung File Upload und Download Datenübergabe zwischen Webseiten Zentrale Fehlerbehandlung Webseiten-Dokumentvorlagen (Templates) Automatische URL-Umleitung (Redirection) Einige komplett nutzlose, aber irgendwie interessante Informationen.

Nutzloses Wissen – Teil 1 Die Durchschnittsgeschwindigkeit eines Schmetterlings beträgt 32 km/h.

Logon und Authentifizierung Problem Nur authentifizierte User(-gruppen) sollen auf bestimmte Seiten zugreifen dürfen Aufgaben Logon-Seite erstellen Authentifizierung der User gegen beliebige Datenbank bzw. andere Quellen Betreffende Seiten absichern

Logon und Authentifizierung Tips & Tricks Rollenbasierte Zugriffskontrolle nicht "aus der Box" möglich Möglich durch Erstellung und Zuweisen eines eigenen GenericPrincipal im Authenticate-Event GenericIdentity-Objekt Speichert User-Identität (Name) GenericPrincipal-Objekt Speichert Identität und Rollen

demo Forms Authentifizierung Democode: FormsAuth.sln

Nutzloses Wissen – Teil 2 Ungarn exportiert mehr Nilpferde als jedes andere europäische Land.

File Upload und Download Problem User sollen Dateien auf dem Webserver in einer Datenbank ablegen können Aufgaben Upload-Seite erstellen Daten aus Upload in SQL Server leiten Download-Seite erstellen Daten aus SQL Server zurück an Browser schicken

File Upload und Download Tips & Tricks FORM enctype="multipart/form-data" einfügen INPUT type="file" runat="server" einfügen PostedFile-Objekt Eigenschaft des Input-Controls Eigenschaften des hochgeladenen Files (Größe, MIME-Type, Name) Abspeichern über SaveAs-Methode oder "manuell" über InputStream

demo Upload / Download - Directory - SQL Server Democode: UploadDownload.sln

Nutzloses Wissen – Teil 3 Der kürzeste burmesische Familienname ist "H".

Datenübergabe zwischen Webseiten Problem Ein Eingabeformular soll über mehrere Seiten gehen (Wizard) und Daten aus der vorigen Seite übernehmen Aufgaben Daten in der aktuellen Instanz der Seitenklasse speichern Daten in der Folgeseite über das Context-Objekt auslesen

Datenübergabe zwischen Webseiten Tips & Tricks Server.Transfer hält die Anfrage auf dem selben Server Zugriff auf die Instanzvariablen der vorigen Seite ist in Form_Load möglich Context-Objekt Handler-Eigenschaft enthält Referenz auf die Instanz der letzten Seitenklasse Cast auf die Seitenklasse nötig

Das ASP.NET Prinzip INETINFO.EXE POST /site/form1.aspx ..... HTTP Request ASPNET_ISAPI.DLL HTTP 1.1 200 OK ..... HTTP Response form1.aspx ASPNET_WP.EXE 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 Kompilieren Instanzieren

demo Context Object verwenden

Nutzloses Wissen – Teil 4 Harvey Kennedy erfand die Schnürsenkel und wurde dadurch reich.

Zentrale Fehlerbehandlung Problem Fehler, die irgendwo in der Web-Applikation auftreten, sollen zentral registriert bzw. behandelt werden Ein Eintrag in das Applikationslog soll erstellt werden Aufgaben Fehlerbehandlungscode in Global_asax schreiben, Informationen extrahieren System.Diagnostics-Klassen verwenden, um einen Logeintrag zu erstellen

Zentrale Fehlerbehandlung Tips & Tricks Die abgefangene Exception ist immer "HTTPUnhandledException", die "wirkliche" Exception steht in InnerException EventLog-Objekt Alle Funktionen zum Umgang mit Eventlogs

Application_Error() Sub Application_Error(ByVal sender As Object, ByVal e As EventArgs) ' Fires when an error occurs Dim MyError As System.Exception Dim ErrorMessage As String Dim ErrorSource As String MyError = Context.Error.InnerException ErrorMessage = MyError.Message ErrorSource = MyError.Source End Sub

Application_Error() Sub Application_Error(ByVal sender As Object, ByVal e As EventArgs) ' Fires when an error occurs Dim MyError As System.Exception Dim ErrorMessage As String Dim ErrorSource As String 'Eigentlicher Fehler ist in InnerException gespeichert 'Äußere Exception ist immer HttpUnhandledException MyError = Context.Error.InnerException ErrorMessage = MyError.Message ErrorSource = MyError.Source End Sub

Logfile-Eintrag erstellen If Not EventLog.SourceExists("TechTalkWeb") Then EventLog.CreateEventSource("TechTalkWeb", "Application") End If Dim MyEventLog As New EventLog() MyEventLog.Source = "TechTalkWeb" MyEventLog.WriteEntry(ErrorMessage & _ ControlChars.CrLf & ErrorSource, _ EventLogEntryType.Error) 'Möglich: Keinen lokalen Fehler auslösen (schlechte Idee) Context.ClearError() 'Stattdessen auf beliebige Seite umleiten (z.B. Alternativserver) Response.Redirect("http://msdn.microsoft.com")

demo ASP.NET Logfiles Democode: CentralExceptions.sln

Nutzloses Wissen – Teil 5 Der Mensch blinzelt normalerweise 25000 Mal pro Tag.

Seitenvorlagen (Templates) Problem Eine Seitenvorlage soll HTML enthalten, das auf jeder Seite vorkommt Lösung Seitenvorlage (Template) erstellen Render-Methode überschreiben Content-Seiten von Master-Seite ableiten

Seitenvorlagen (Templates) Tips & Tricks Render-Methode überschreiben ist einfach zu realisieren und sehr performant, aber etwas schlecht zu warten (kein WYSWYG) Alternative: Header und Footer als Controls erstellen, in OnPreRender-Event einfügen (WYSWYG über Visual Studio)

demo ASP.NET Templates Democode: SimpleTemplates.sln

Nutzloses Wissen – Teil 6 Gold ist das 16. seltenste Element auf der Welt.

Automatische URL-Umleitung Problem Seitenaufrufe sollen auf eine andere URL umgeleitet werden, ohne daß der User dies bemerkt (z.B. bei "Umzug" der Site) Vorbild: mod_rewrite von Apache Lösung BeginRequest-Event abfangen RewritePath-Funktion verwenden, um URL "umzuschreiben"

Automatische URL-Umleitung Tips & Tricks Ursprüngliche URL kann für "Weiterverwendung" im Context-Objekt gespeichert werden (Items-Aufzählung)

demo URL-Umleitung Democode: ReDirect.sln

Vielen Dank! Fragen kostet nichts…

Weitere Informationen Nutzloses Wissen Hanswilhelm Haefs: Handbuch des nutzlosen Wissens, dtv Verlag Forms Authentication http://portals.devx.com/SummitDays/Article/6666/0/page/1 URL Rewriting http://www.codeproject.com/aspnet/URLRewriter.asp ASP.NET Templates http://www.wilsondotnet.com Download der Beispiele http://www.uwebaumann.de ASP.NET allgemein http://www.asp.net