3.86k likes | 4.08k Views
ASP.NET. Programmeringsteknologi The pure and simple truth is rarely pure and never simple ." Oscar Wilde. Husmand/specialist. Hvad er mon dette?. Den første tegning af Internettet. Internettets historie. Internettets historie. Internettets historie. Nogle begreber. Hvad er Internettet?
E N D
ASP.NET Programmeringsteknologi The pure and simple truth is rarely pure and never simple."Oscar Wilde
Husmand/specialist Jens Houmann - Nordjyllands Erhvervsakademi
Hvad er mon dette? Den første tegning af Internettet Interaktionsudvikling
Internettets historie Interaktionsudvikling
Internettets historie Interaktionsudvikling
Internettets historie Interaktionsudvikling
Nogle begreber • Hvad er Internettet? • Hvad er WWW? • Hvad er en browser? • Hvad laver en server? • Hvad er en URL? • Hvad laver en DNS? • Hvad er HTML? • Hvad er en IP-adresse? Interaktionsudvikling
Hvad er internettet? • Hvad kan det bruges til? • Hvordan virker det? • Hvor mange brugere og sites? • Hvad kræves der for at komme på? • Hvilke browsere anvendes? Interaktionsudvikling
Hvad kan det bruges til? • Mail • Informationssøgning • Filoverførsel • Chat • Spil • Ressourcedeling • Overvågning • E-handel • Nyhedsgrupper • Navigation (google maps) Interaktionsudvikling
Internettet – Interconnected Nets • Et antal host forbundet ved hjælp af TCP/IP-protokollen. • WWW World Wide Web • FTP File Transfer • SMTP Simple Mail Transfer • HTTP HyperText Transfer • SNMP Simple Network Management Interaktionsudvikling
World Wide Web • Godt 18 tusinde i 1995 • 36.276.252 sites i december 2001 • 118,023,363 sites i august 2007 • 175,480,931 sites i august 2008 • Mere end 20 millioner servere • Det skønnes at der er 1,463,632,361 mio. brugere af internettet • Kilde: http://www.internetworldstats.com/stats.htm Interaktionsudvikling
Hvem bruger internettet? Interaktionsudvikling
Hvilken browser anvendes i dag? Interaktionsudvikling
Og hvem er så det????? Sir Tim Berners-Lee – Udviklede HTML Sir Interaktionsudvikling
Og hvem er så det? • Marc Andreessen – opfinder Mosaic-Browseren (facebook) Interaktionsudvikling
World Wide Web • Grundlagt i 1989 af CERN med støtte fra NCSA. • Sir Tim Berners-Lee lavede rygraden • National Center for Supercomputer Applications lavede Mosaic-browseren. • Bygger på det oprindelige Arpanet fra 1960-erne • Anvender TCP/IP-protokollen med overliggende tjenester • HTTP – Hyper Text Transfer Protocol Interaktionsudvikling
En URL • URL: Uniform Ressource Locator • http://www.olsen.dk/beskrivelser/index.html • www: protokol • olsen: Domænenavn • dk: Domæne Danmark • beskrivelser: sti til websider • index.html: konkret dokument af typen HTML Interaktionsudvikling
En URL – søgt efter: Canon Interaktionsudvikling
World Wide Web • W3C, World Wide Web Consortium sørger for standardisering gennem Recommandations • Kan findes på www.w3c.org • Kan validere html-dokumenter Interaktionsudvikling
HTML • HyperText Markup Language • Formatteringssprog til WWW-sider • HyperText = tekst med links til andre steder i teksten • f.eks. Windows Help-system Interaktionsudvikling
Eksempel på HyperTekst Interaktionsudvikling
Internettet funktion Jens Houmann - Nordjyllands Erhvervsakademi
HTML • En HTML-fil er en tekstfil • HTML-filen fortolkes af en browser • Resultatet er et "grafisk billede” • HTML er standardiseret • HTML beskæftiger sig kun med hjemmesidens udseende • Der findes mange udvidelser til HTML: • JavaScript • XML • DHTML • XHTML Interaktionsudvikling
Et simpelt dokumentBemærk indrykningen <html> <head> <title>Mit første HTML dokument</title> </head> <body> Hello World! </body> </html> Interaktionsudvikling
Resultat Interaktionsudvikling
HTML-filen • En HTML-fil består af • Tekst (indholdet), der vises i browseren • Kontrolkoder (tags), der fortæller, hvordan teksten vises • Et tag er altid på formen • <x> efterfulgt af </x> • <x> er start-tag, • </x> er slut-tag • Enkelte undtagelser: <BR /> Interaktionsudvikling
Resultat (<br> indsat) Interaktionsudvikling
Eksempel <HTML> <!-- Eksempel på et HTML-dokument --> <!– Lavet af Søren Sømand 2009.01.23 --> <HEAD> <TITLE>Internet and WWW How to Program - Welcome</TITLE> </HEAD> <BODY> <P>Welcome to Our Web Site!</P> </BODY> </HTML> Interaktionsudvikling
Resultatet Interaktionsudvikling
Litteratur til ASP.NET • Beginning ASP.NET 3.5 in C# 2008 • Matthew Mac Donald • Apress • ISBN 1-59059-891-1 • ASP.NET Unleashed • Stephen Walther • Sams Publishing • ISBN: 0-672-32542-x • Beginning ASP.NET 2.0 With C# • Chris Ullman et. Al. • Wrox • ISBN: 0-470-04258-3 Jens Houmann - Nordjyllands Erhvervsakademi
Introduktion .Net arkitekturen ASP.NET siders anatomi Web og Web-forms Internet Information Server Forms og Server Controls Variable, datatyper og datastrukturer Kontrolstrukturer Objekter, klasser, metoder, Events ADO.NET, Datasæt og databinding Repeater, Datalist, Datagrid Læsning/skrivning af filer Læsning databaser Code-Behind og reusable code Systemudvikling Test Indhold - overordnet Jens Houmann - Nordjyllands Erhvervsakademi
Lektionsplan – dag 1 • Introduktion til Active Server Pages. • Nogle væsentlige begreber • Lidt Web-teori • Internet Information Server • Traditionel ASP • .NET-arkitekturen • ASP.NET – en sides opbygning Jens Houmann - Nordjyllands Erhvervsakademi
Hvad er ASP.Net • Microsoft Framework – Active Server Pages • Inkl: • Server scripts • Web Forms • Web services • 100% Objektorienteret med GUI • Web controls som udvidelser til html • Adskillelse af layout og virksomhedslogik • Component-baseret udvikling • Interaktivt design af hjemmesider • Compileret kode, ikke oversat • State-management Jens Houmann - Nordjyllands Erhvervsakademi
ASP.NET anvendelse • Tællere til antal besøgende • E-handelssider • Databasetilgang/vedligehold • Kalender-funktioner • Brugerundersøgelser • Nyhedsbreve • Tilmelding til arrangementer • Afsendelse af e-mail, SMS etc. Jens Houmann - Nordjyllands Erhvervsakademi
Web-udviklingen • Bruger af Internettet • Hjemmesider med information, links og farver • Sites med tabeller, frames • Brug af client-side scripting og Cascading Stylesheets • Forms til indtastning af data • Dynamiske sider til behandling af data (ASP, JSP) • Platforms-uafhængig kode med code-behind og stored procedures. • Web-services og Business objects • Web 2.0, AJAX, SilverLight • ????? Jens Houmann - Nordjyllands Erhvervsakademi
Web-løsning vs. Windows-løsning • Angiv fordele og ulemper Jens Houmann - Nordjyllands Erhvervsakademi
Stateless Jens Houmann - Nordjyllands Erhvervsakademi
ASP – Active Server Pages • Server side scripting-miljø lavet af Microsoft • Kører mest almindeligt via Web-serveren Internet Information Services (IIS) • Inkluderet i Win XP og Vista • ASP anvendes når der er behov for dynamiske hjemmesider. • ASP genererer HTML (dynamisk) – indhold ændrer sig afhængigt af det programmerede indhold af ASP-siden • En ASP-side er ren tekst med kode som IIS behandler Jens Houmann - Nordjyllands Erhvervsakademi
ASP – Active Server Pages • Siderne kan skrives i: • Notepad • HTML-Editor • Stones Web-writer • Frontpage Editor • Dreamweaver etc. • GoLive • IDE (integrated developement environment) • Web-matrix • Visual Studio .Net Jens Houmann - Nordjyllands Erhvervsakademi
ASP – Active Server Pages • Extension skal være: • ASPX for .NET • ASP for traditionel ASP • IIS vil selv lede efter default.aspx (som regel) • ASP er ikke i sig selv case-sensitive • C# er case sensitive • Kan give en uhyggelig blanding af Data, logik og præsentation. Jens Houmann - Nordjyllands Erhvervsakademi
Active Server Pages • Kan afvikle scripts i: • Visual Basic (VBScript) • C# (See Sharp) • Kode kan udvikles i ”alle” andre sprog: • Java, Eifel, Cobol etc. Jens Houmann - Nordjyllands Erhvervsakademi
Første eksempel (trad. ASP) • Eks1.asp <html> <head> <title>Min allerførste ASP-side</title> </head> <body> <h1Aalborg, februar 2009</h1> <br> Klokken er nu: <%=time%> <BR> <h2>Goodmorning Campers - This might be your lucky day!</h2> </body> </html> Se den her Jens Houmann - Nordjyllands Erhvervsakademi
Første eksempel (ASP.NET c#) <%@ Page Language="C#" %> <script runat="server"> void Page_Load(object Sender ,EventArgs E) { lblMessage.Text= "Velkommen til Kursus "; } </script> <html> <head> <title>Min allerførste ASP.NET-side</title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> </head> <body> Aalborg, februar 2007 <br> <asp:label ID="lblMessage" Font-Size="20pt" runat=server/> <br> Goodmorning Campers - This might be your lucky day! </body> </html> • Se eksemplet her Jens Houmann - Nordjyllands Erhvervsakademi
Virtuelle directories Jens Houmann - Nordjyllands Erhvervsakademi
Internet Information Services (IIS) • IIS er Microsofts Web Server • kører som en separat process "inetinfo.exe" • kræver et server-like OS: Windows Vista, XP Pro • multi-threaded for servicering af tusindvis af requests… client IIS client client Windows Server . . . Jens Houmann - Nordjyllands Erhvervsakademi
Web site • IIS håndterer web sites • Hvordan virker IIS? • Hvert web-site har sin egen fysiske mappe på harddisken • Hvert web-site tildeles et virtual name til denne mappe • Brugere surfer til vores web-site vha. det givne virtual name • Eksempel: • web site lever i C:\Inetpub\wwwroot\WebSite • web site's virtual name er "AAAPainting" • IIS mapper det virtuelle til den fysiske… Jens Houmann - Nordjyllands Erhvervsakademi
Øvelse • Prøv det ! • - se også source/kilde i browseren. Jens Houmann - Nordjyllands Erhvervsakademi
Opgave 1 • Lav eksempel 1 om til at modtage to felter: fornavn og efternavn. • Når der trykkes på knappen skal der udskrives hele navnet. • Se løsningen her Jens Houmann - Nordjyllands Erhvervsakademi
Repetition • Hvad er forskellen på javascript og ASP.Net • Hvad kan .Net? • Hvad er Page_Load? • Hvad betyder JIT? • Hvad er servercontrols? • Hvad hedder Microsofts webserver? • Hvad er request og responseobjekter? • Hvad betyder begrebet stateless? • Hvad er en code-render-block? • Hvad er et virtuelt directory? Jens Houmann - Nordjyllands Erhvervsakademi
Mål “Microsoft .NET is based on the Common Language Runtime (CLR) and an extensive set of Framework Class Libraries (FCL). The CLR defines a common programming model and a standard type system for cross-platform, multi-language development.” • CLR-baseret eksekvering • Applikationsdesign • Komponent-baseret udvikling Jens Houmann - Nordjyllands Erhvervsakademi