1 / 38

ASP .NET In der Projektpraxis

ASP .NET In der Projektpraxis. Hannes Preishuber MCSD, MCSE, MCT CEO ppedv ag HannesP@ppedv.de. Agenda. Active Server Pages eine Success Story Warum wechseln ASP .NET was ists ASP .NET was bringts Anwendungsdesign in .NET Portierung ASP -> .NET.

ryo
Download Presentation

ASP .NET In der Projektpraxis

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. ASP .NET In der Projektpraxis Hannes PreishuberMCSD, MCSE, MCT CEO ppedv ag HannesP@ppedv.de

  2. Agenda • Active Server Pages eine Success Story • Warum wechseln • ASP .NET was ists • ASP .NET was bringts • Anwendungsdesign in .NET • Portierung ASP -> .NET

  3. Das häufigste Frontend wird in Zukunft Browser basiert sein. Der Benutzer will jede Art von Informationen fließen sehen. Grenzen wie Betriebsystem oder Prozessoren interessieren ihn dabei nicht.

  4. Active Server Page ASP • Voll integriert in IIS • (VB)Script in HTML-Seiten • Extension ASP • Alle COM-Objekte verfügbar • Z.B. ADO • Sechs eingebaute Objekte • Server, Response, Request... • Entwicklungswerkzeug Visual InterDev

  5. ASP Grenzen • Script Programmierung • Code & Design in einer Seite • Session Management • Cookies & Web Farms • Installation & Betrieb • Austauschen einer DLL • Fehlersuche • Code Sichtbar für Admin • DTCs (Design Time Controls)

  6. Hier kommt.... • Seite.ASPX • <> ASP 4.0 • Auch bekannt als ASP+ • Riesen Schritt • Voll kompiliert • Objektorientiert • Basiert und nutzt .NET Framework • Keine DLL's mehr registrieren • Einfach Hype • ....

  7. Wie bekomme ich .NET • Visual Studio .NET (RC1) • Download oder Bestellen • Komponenten Update • 1 CD inkludiert in Visual Studio .NET • ASP .NET Premium • 18 MB Download von zb www.ASP.net • Mehr Features als ASP .NET • 4 Prozessoren, Chaching, Web Farm Session State

  8. Grundlagen .NET • Zwei Techtalk's • Was ist ASP .NET • Basis Beta 1 • http://www.microsoft.com/germany/ms/msdnevents/techtalk/download/TT-0201-PPT.ppt • Was ist das NET Framework & VB .NET • Basis Beta 2 • http://www.microsoft.com/germany/ms/msdnevents/techtalk/download/TT-0901.ppt

  9. Bestandteile • ASPX-Seite • HTML-Layout • Server-Controls • Codebehind-Seite • Programmcode in beliebiger Programmiersprache • Nutzung von Assemblies einer beliebigen Programmiersprache • Resource-Datei • BIN-Verzeichnis

  10. Warum Codebehind? • Trennen von User-Interface und Logik • Webdesigner bekommen ihre Chance • Compiler kann übersetzen • Drei Arten • In Site • Src • Codebehind • n. Sprachen • VB.NET und C# als Hauptkandidaten

  11. C# Neu und schön Case Sensitiv Java & C++ Überladen von Operatoren Dokumentieren Unmanaged Code CSC VB .NET 10 Jahre Wissen Option explizit VB Dialekte IDE komfortabler VBC Unterschiede

  12. Kein Unterschied • Beide Sprachen nutzen das Framework • Common Language Runtime • Common Type System • Common Language Specification • .NET Klassenbibliothek • Intermediate Language • Just in Time Compiler • Garbage Collection • Objektorientiert

  13. Argument: Web Forms • HTML • Runat="server" • Server Controls • Textbox, Label .. • DataList Controls • Datagrid, Datalist, Repeater • Validation • Feldprüfung • Rich Controls • Kalender

  14. Objektmodell <script language="VB" runat="server"> Sub Btn_Click(Sender As Object, E As EventArgs) Message.Text = "Hi " & Name.Text End Sub </script> <form action="myform.aspx" runat=server> Name: <asp:textbox id="Name" runat=server/> <asp:button text="Enter" Onclick="Btn_Click" runat=server/> <asp:label id="Message" runat=server/> </form>

  15. Vorteile WebForms • Objektmodell • Datenbindung • Validierbar • Viewstate • Erzeugen Browser HTML Code • User Controls • Kombinieren von WebControls (Menü)

  16. File Upload • FTP • Posting Acceptor <form enctype="multipart/form-data" action="/scripts/cpshost.dll?PUBLISH" method="POST"> • Drittanbieter Tool • Safileup • WebDav Erweitertung von HTTP 1.1 • Per ASP Request.BinaryRead(Request.TotalBytes)

  17. File Upload • Imports System.Web.Util • Form erzeugen • encType="multipart/form-data" • Input Element • <input id=Upload1 type=file runat="Server"> • Input Button • Upload Code • Upload1.PostedFile.SaveAs(Datei)

  18. Datenbindung • Connection String • ADO Objekt erzeugen • Server.CreateObject("ADODB.Recordset“) • Open Cursortype u Locktype • <%=rs.fields(„Name“)%> • Connection bleibt offen (pooling) • Datenbindung nur an DTCs

  19. Datenbindung • Connection String • Speichern in Web.Config Dim hshTable as NameValueCollection = CType(Context.GetConfig("system.web/myconf"), NameValueCollection) Dim dsn as String = CType(hshTable.Item("DBCON"), String)"), Hashtable)("DBCON")), String) • DatasetCommand • mCmd("select * ",con) • DataSet statt Recordset • mCmd.Filldataset(myDS,"tbName") • Table Objekt an Grid binden • Gr.Datasource=mCmd.Tables(0).Defaultview

  20. Datagrid • Design Time Control (DTC) • Recordset • Datagrid • Dicke Library • _ScriptLibrary • Aber sogar editierbar! • Hart aber möglich • Q229672

  21. Datagrid • visuelles Grid • Binden an Daten • Tabelle, XML, Array, Hashtable • editierbar • Customizing • Checkboxen, Buttons, Grafiken, Links • Events • ItemCommand

  22. Mail Versand • CDONTS oder CDOSYS • SMTP Server des IIS • Fremde Komponenten • Smtp Mailer • Hardcore INET Objekt

  23. Mail Versand • Imports System.Web.Util • Generieren einer MailMessage • Dim mymail as new MailMessage • Füllen des Mail Containers • Mymail.from="christkindl@himmel.de" • Smtpmail.Send • Smtpmail.send

  24. Grafik anzeigen • Balkengrafik aus ASP • dehnen eines GIF‘s • Office Web Components • Excel Chart • ASP Image Komponenten

  25. Grafik anzeigen • Imports System.Drawing • Aktuell nur Drawing2D • Image Control auf aspx • <asp:image id=Bild imageurl="bild.aspx"> • Erzeuge Bild • Bild=New Bitmap(300,230,...) • Speichern • Bild.Save(Stream,ImageFormat.PNG) • Response.BinaryWrite(Stream.ToArray)

  26. Architektur • Anforderungen an Softwareentwicklung • Code reuse • Skalierbar • Ausfallsicher • Vorteile von Architektur • Gezielteres vorgehen • Später keine Grenzen • Architektur<>Pflichtenheft • Grobes Konzept

  27. Windows DNADas Entwicklungsmodell für Windows Datenbanken Mainframe-Systeme ExterneAnwendungen Thin Client Rich Client

  28. Architektur in .NET • Keine COM Objekte mehr • Aber COM+ Unterstützung • System.Enterpriseservices • Kein eigener Komponentendienst • Asynchrone Prozesse • Keine Callbacks • DisConnected Data • Keine zentrale Registrierung • Rechte Verwaltung

  29. Architektur in .NET • Datenbank • Stored Procedures • Datenzugriff • ADO .NET • Middle Tier • COM Objekte über Wrapper einbinden • Assamblies als COM Ersatz • WebServices liefern Funktionalität • Frontend • Web Forms

  30. Sample:IBuySpy • Sample Downloadbar • http://www.ibuyspy.com/ • Klassische 3 Tier Applikation

  31. Web Farm • State Management • Einrichten über web.config • Cookies • Cookieless • Stateserver • InProc • OutProc • SQL Server • Scripte InstallSqlState.sql

  32. Warum portieren • Web Forms • Trennung Code und UI • Web Farmen • State & Session Management • Installation • Copy, WEB.CONFIG • Performance • Caching, Compiliert • Webservices konsumieren

  33. Wie portieren? • Umbenennen der ASP Seite (ASPX) • Prozedur Aufruf mit "( )" • Variablen deklarieren • Kein SET mehr • Standardeigenschaften ergänzen • Aspcompat in Page Direktive setzen • ..... • Quelle www.devtrain.de

  34. aspcompat • <%page aspcompat=true%> • Page läuft im STA • Single Threaded Apartment • Nur für ASPX Seiten • Alle VB 6.0 COM sind STA • Manche COM Objekte können MTA & STA • Umschalten über Registry • Makfre15.bat & makapt15.bat • ASP Objekte in COM Objekten • OnStartPage & OnEndPage Eventhandlers • ObjectContext

  35. Fehlersuche • Neues Error Fenster • Lokal andere Meldungen • Tracing • Page Level • Application Level über Web.config • Debugging • Ohne Visual Studio • dbgclr.exe • Performance Counters

  36. Das Finale: ASP .NET • Webanwendungen • Verschiedene Clients • Browser, Mobile und Webservice Consumer • Einfacheres Erstellen • Mächtigere Funktionen • Designed für Enterprise Lösungen

  37. Wo gibt’s weitere Info’s? • MSDN Online • http://www.microsoft.com/germany/msdn • MSDN Quickie • http://www.microsoft.com/germany/msdn/quickie • MSDN TechTalk-Newsgroup • news://msnews.microsoft.com/microsoft.public.de.german.techtalk • www.devtrain.de • http://www.devtrain.de • www.gotdotnet.de • Bücher • ASP3.0/ASP+ Sybex Verlag Hannes Preishuber

  38. Uff... Fragen!?

More Related