Kluczowa różnica: ASP oznacza Active Server Pages. Jest powszechnie znany jako Classic ASP lub ASP Classic. Jest to środowisko skryptowe po stronie serwera opracowane i wydane przez firmę Microsoft. ASP.NET to platforma aplikacji WWW po stronie serwera. ASPX oznacza rozszerzone strony Active Server. Został zaprojektowany do tworzenia stron internetowych w celu tworzenia dynamicznych stron internetowych. Oba obsługują kontekst sesji. Obiekt sesji przechowuje informacje o lub zmienia ustawienia sesji użytkownika. Zasadniczo odnotowuje wszystko, co użytkownik widzi i robi na stronie, szczególnie wszelkie zmiany, które użytkownik może wprowadzić na stronie.
ASP jest głównie używana do tworzenia i uruchamiania dynamicznych, interaktywnych aplikacji serwera WWW. Pozwala także łączyć strony HTML, polecenia skryptów i komponenty COM w celu tworzenia interaktywnych stron internetowych i wydajnych aplikacji internetowych. Ułatwia także tworzenie i modyfikowanie wspomnianych aplikacji internetowych.
Po jego pierwotnym wydaniu ukazały się dwie wersje. W ASP 2.0 wprowadzono sześć wbudowanych obiektów do oryginału: Application, ASPError, Request, Response, Server i Session. W ASP 3.0 wprowadzono dodatkowe udoskonalenia, takie jak metoda Server.Transfer, metoda Server.Execute i ulepszony obiekt ASPError. Ponadto ASP 3.0 domyślnie włączył buforowanie i zoptymalizował silnik, aby uzyskać lepszą wydajność. Jednak od maja 2013 r. Nie planuje się aktualizacji ASP.
Środowisko ASP.NET jest oparte na Common Language Runtime (CLR). Dzięki temu programiści mogą pisać kod ASP.NET za pomocą dowolnego obsługiwanego języka .NET. Strony internetowe ASP.NET są również powszechnie znane jako formularze internetowe. Zawierają znaczniki (X) HTML. Zawiera również znaczniki, które definiują ustawienia Web Controls i kontroli użytkownika po stronie serwera. Tutaj programiści umieszczają całą zawartość rc na stronie internetowej.
W programie ASP.NET Framework 2.0 wprowadzono nowy model kodu źródłowego. Pozwala to na zachowanie tekstu statycznego na stronie .aspx, podczas gdy kod dynamiczny pozostaje w pliku .aspx.vb lub .aspx.cs lub .aspx.fs. Lokalizacja kodu dynamicznego zależy od używanego języka programowania.
Oba obsługują kontekst sesji. Obiekt sesji przechowuje informacje o lub zmienia ustawienia sesji użytkownika. Zasadniczo odnotowuje wszystko, co użytkownik widzi i robi na stronie, szczególnie wszelkie zmiany, które użytkownik może wprowadzić na stronie. Ma to tę zaletę, że w przypadku awarii systemu pomiędzy zmianami, które użytkownik próbował wykonać, zmiany nie zostaną utracone, gdy system ulegnie awarii. Sesja zachowa pamięć o tym, gdzie użytkownik skończył.
Sesja to w zasadzie plik cookie strony internetowej. Przechowuje i pobiera wartości dla użytkownika, gdy użytkownik porusza się po stronie. Zmienne przechowywane w obiekcie Session przechowują informacje o jednym użytkowniku i są dostępne dla wszystkich stron w jednej aplikacji. Niektóre typowe informacje przechowywane w zmiennych sesji to nazwa, identyfikator i preferencje. Serwer tworzy nowy obiekt Session dla każdego nowego użytkownika i niszczy obiekt Session po wygaśnięciu sesji.
Niektóre różnice między sesją ASP i sesją ASP.NET:
- W ASP sesja jest zależna od procesu, podczas gdy w ASP.NET sesja jest niezależna od procesu.
- W ASP sesja jest zależna od plików cookie, podczas gdy w ASP.NET sesja jest niezależna od plików cookie.
- Stan sesji ASP nie ma nieodłącznego rozwiązania do pracy z farmami sieci Web. Sesja ASP.NET może być przechowywana w serwerze stanów i SQL SERVER, który może obsługiwać wiele serwerów.
- Sesja ASP działa tylko wtedy, gdy przeglądarka obsługuje pliki cookie, sesje sesji ASP.NET są wykonywane niezależnie.
- Stan sesji ASP jest bardzo silnie uzależniony od procesu IIS. W przypadku ponownego uruchomienia usług IIS zmienne sesji ASP są również przetwarzane. Sesja ASP.NET może być niezależna od środowiska hostingu, dlatego sesja ASP.NET może być utrzymywana nawet po ponownym uruchomieniu usług IIS.
- Sesja ASP napotyka ograniczenia farm serwerów. Gdy użytkownicy przechodzą z serwera na serwer w farmie serwerów WWW, ich stan sesji nie następuje po nich. Stan sesji ASP.NET obsługuje konfiguracje farm serwerów. Przechodzi do modelu poza procesem, dlatego nie napotyka problemu z farmą serwerów.