Hur många av er har tyckt att det har varit krångligt att installera en ASP.Net applikation på en anna dator? Hur många har tyckt att det har varit ”jobbigt” att kompilera om all sin kod vi en liten ändring och sedan kopiera över filer till en annan dator? Antar att några av er tycker det. Ni som tycker det, kommer säkert gilla det jag kommer att skriva om nu. I ASP.Net 2.0 kodnamn ”Whidbey” så behöver ni inte kompilera er kod längre. Allt ni behöver göra är att skapa en mapp i roten där er applikation finns, med namet Code. I denna mapp kan ni skapa alla era klasser, även code-behind, resurs filer etc kan lagras i denna mapp. När ni första gången startar er applikation så kommer alla filer i Code automatiskt att kompileras. Denna sorts kompilering kallas för Dynamisk kompilering. Automatisk kompilering i ASP.Net 2.0
Vad innebär detta då när en applikation ska installeras på en annan dator? Jo, det räcker med en vanlig enkel filkopiering av mappen där er applikation ligger till en annan dator där ASP.Net 2.0 finns installerat. Ingen förkompilering behövs, det är bara att kopiera filerna till den andre datorn och köra. För er som inte vill lagra källkoden i en Code och speciellt inte på servern, kan använda er av något som heter ”Pre-compilation”. Med hjälp av ett verktyg ”aspnet_compiler.exe” så kan ni kompilera alla er kod inkl .aspx sidor till assemblies (dll:er). Problemet med denna kompilering är att ni har ingen möjlighet att ändra någon kod på servern, inte ens i .aspx sidorna utan att behöva kompilera om allt. Det finns en annan slagt ”Pre-compilation” som heter ”In-place Pre-compilation”. Denna kompilering fungerar så att ni kan kompilera hela er applikation på plats via en URL. Låt oss säga att ni har en application på adressen http://myserver/myapp/. För att kompilera koden på plats så skriver ni enkelt http://myserver/myapp/precompile.axd. Vad kan detta vara bra för? Jo, som ni säkert vet så när er applikation körs för första gången så tar det en kort stund innan det visas något i browsern. Det sker nämligen då en kompilering. För att undvika denna kompilering så kan ni använda er av ”In-place Pre-compilation” för att själva göra kompilering av alla sidor utan att ASP.Net behöver göra det åt er.
/Fredrik Normén NSQUARED2
http://www.nsquared2.net