Webserveren kan afvikle flere applikationer, der hver har deres eget selvstændige ”liv” og hukommelse. Den enkelte applikation består typisk af flere elementer i form af sider / services. Webserveren sørger for trådning, så flere klienter kan arbejde på samme applikation. Der oprettes et nyt side/service object for hvert kald fra klient. Webserveren anvender HTTP protokollen, der som udgangspunkt er stateless, men klienten får tildelt en sessionid, der kan bruges i forbindelse med at holde en state (sendes med i request). ISS webserver og web applikationer
Webapplikationen er placeret i sin egen virtuelle mappe. En fysisk undermappe kan godt samtidig være ”hjemsted” for en ny applikation. Sider og andre filer kan være placeret i undermapper, idet standard er nogle specielle mapper, som ses til højre
ASP.NET filtyper (C# som sprog)
Statisk / dynamiske sider Serversiden: På serversiden er HTML sider og HTML kontroller i ASP.NET sider statiske. På serversiden opnås dynamiske sider med asp.net kontroller og bagvedliggende kode. Klientsiden: Klienten modtager HTML side, der præsenteres med en browser, der som udgangspunkt er statisk, men der kan indlejres javascript (og andre dynamiske elementer som fx flash) i koden, der kan gøre siden dynamisk på klientsiden. Med Javascript, kan HTML dokumentet hos klienten ændres – browseren tilpasser visningen dynamisk når siden ændres, scriptet kan evt. indeholde kald til server for at hente nye dataelementer til dokumentet, hvilket er det der sker med brug af AJAX.
Page request og postback Behandlingen på serveren er forskellig, når siden aktiveres som en request (ny side) og når den aktiveres som en postback (efterfølgende kald fra form til siden på bagrund af event), hvor der kan være data fra form’en med tilbage til serveren. Hvorvidt et event på klienten skal føre til en postback kan styres på kontroller med en property (AutoPostBack) På Knapper er AutoPostBack som udgangspunkt sat til true, men for øvrige er det false og man skal så selv ændre, hvis man ønsker en postback. Bemærk at på serversiden oprtæder Page:Load eventet (kalder Page_Load metoden) både ved request og postback, samt at dette event optræder andre triggede events. Man kan teste, om det er en PostBack med IsPostBack property’en.
ASP.NET – web site projekt
Webform controls
Postback For at indhold føres med til server skal der ske en postback. For knapper sæt AutoPostBack til true.
Validators
RequiredField & Range-Validator på klientside
RegularExpressionValidator Stærk kontrol til validering af felter med regulære udtryk på klientsiden. Flere færdige udtryk eller selv- defineret
CompareValidator For validering af afhængige felter på klientside.
CustomValidator CustomValidator med validering på klientside ved brug af JavaScript. Script kan indskrives i sourcefilen.
ValidatorSummary
Web control library
Web user controls
Web user control - opbyg
Web user control - brug
Databaser i webprojekter
Opsætning for mappegennemsyn i web.config - filen Styringen om man må browse i mapper eller ej - styres af elementet directoryBrowse i sektionen system.webServer. Man skal samtidig så huske ikke at have en default / index fil, som der automatisk startes hvis der kun angives et websted
Åben for ekstern adgang til webserver (her fra xp)
Åben for ekstern adgang til webserver (her fra vista)