Nøgleforskel: ASP står for Active Server Pages. Det er almindeligt kendt som Classic ASP eller ASP Classic. Det er et server-side scripting miljø, der er udviklet og udgivet af Microsoft. ASP.NET er en server-side webapplikationsramme. ASPX står for aktive server sider udvidet. Det blev designet til webudvikling til at producere dynamiske websider. Begge understøtter konteksten for en session. Et sessionsobjekt lagrer oplysninger om eller ændrer indstillinger for en brugersession. I det væsentlige noterer det sig alt, hvad en bruger ser og gør på en side, især enhver ændring, som brugeren kan indarbejde på siden.
ASP bruges hovedsagelig til at oprette og køre dynamiske, interaktive webserver applikationer. Det giver også mulighed for at kombinere HTML-sider, scriptkommandoer og COM-komponenter for at oprette interaktive websider og kraftfulde web-baserede applikationer. Det gør det også lettere at udvikle og ændre de nævnte webapplikationer.
Efter den oprindelige udgivelse har der været to versioner. ASP 2.0 introducerede seks indbyggede objekter til originalen, som var Application, ASPError, Request, Response, Server og Session. ASP 3.0 introducerede nogle ekstra forbedringer som Server.Transfer metode, Server.Execute metode og et forbedret ASPError objekt. Desuden aktiverede ASP 3.0 også buffering som standard og optimerede motoren til bedre ydeevne. Men fra maj 2013 er der ingen planlagte opgraderinger til ASP.
ASP.NET er bygget på Common Language Runtime (CLR). Dette gør det muligt for programmører at skrive ASP.NET kode ved hjælp af ethvert understøttet .NET sprog. ASP.NET websider er også almindeligt kendt som webformularer. De indeholder statisk (X) HTML markup. Den indeholder også markup, der definerer server-side Web Controls og User Controls. Det er her, hvor udviklere placerer alt indholdet af rc til websiden.
I ASP.NET Framework 2.0 blev der introduceret en ny kode-bag-model. Dette tillader statisk tekst at forblive på .aspx-siden, mens dynamisk kode forbliver i en .aspx.vb eller .aspx.cs eller .aspx.fs-fil. Placeringen af den dynamiske kode afhænger af det anvendte programmeringssprog.
Begge understøtter konteksten for en session. Et sessionsobjekt lagrer oplysninger om eller ændrer indstillinger for en brugersession. I det væsentlige noterer det sig alt, hvad en bruger ser og gør på en side, især enhver ændring, som brugeren kan indarbejde på siden. Dette har en fordel, da i tilfælde af at systemet går i stykker mellem de ændringer, som brugeren forsøgte at lave, vil ændringerne ikke gå tabt, når systemet styrtede. Sessionen vil holde minde om hvor brugeren slap af.
Sessionen er i det væsentlige en webside cookie. Det gemmer og henter værdier for en bruger, da brugeren navigerer på websiden. De variabler, der er gemt i et Session-objekt, indeholder oplysninger om en enkelt bruger og er tilgængelige for alle sider i en applikation. Nogle fælles oplysninger gemt i session variabler er navn, id og præferencer. Serveren opretter et nyt Sessionsobjekt for hver ny bruger, og ødelægger Session-objektet, når sessionen udløber.
Nogle forskelle mellem ASP Session og ASP.NET Session:
- I ASP er sessionen Processafhængig, mens i ASP.NET er sessionen Process uafhængig.
- I ASP er sessionen afhængig af cookies, mens sessionen i ASP.NET er Cookie-uafhængig.
- ASP-sessionstilstanden har ingen iboende løsning til at arbejde med Web Farms. ASP.NET session kan gemmes i state server og SQL SERVER som kan understøtte flere servere.
- ASP-session fungerer kun, når browseren understøtter cookies, ASP.NET-session kører uanset.
- ASP-sessionstilstand er meget stærkt afhængig af IIS-processen. Hvis IIS genstarter ASP-sessionen, bliver også variable genbrugt. Mens ASP.NET session kan være uafhængig af hosting miljøet således ASP.NET session kan opretholdes, selvom IIS genstarter.
- ASP-session står over for begrænsninger for serverbrug. Som brugere flytter fra server til server på en webserver gård, følger deres sessionstilstand dem ikke. ASP.NET session tilstand har støtte til server farm konfigurationer. Det bevæger sig til en out-of-process model, hvorfor den ikke står over for server farm problem.