Βασική διαφορά: Το ASP αντιπροσωπεύει τις ενεργές σελίδες διακομιστή. Είναι κοινώς γνωστό ως Classic ASP ή ASP Classic. Πρόκειται για ένα περιβάλλον scripting από την πλευρά του διακομιστή που αναπτύσσεται και κυκλοφορεί από τη Microsoft. Το ASP.NET είναι ένα πλαίσιο εφαρμογών Web από την πλευρά του διακομιστή. Το ASPX σημαίνει Active Server Pages Extended. Έχει σχεδιαστεί για Web ανάπτυξη για την παραγωγή δυναμικών ιστοσελίδων. Και οι δύο υποστηρίζουν το πλαίσιο μιας συνεδρίας. Ένα αντικείμενο συνεδρίασης αποθηκεύει πληροφορίες ή αλλάζει ρυθμίσεις για μια περίοδο λειτουργίας χρήστη. Ουσιαστικά, σημειώνει τα πάντα που ένας χρήστης βλέπει και κάνει σε μια σελίδα, ειδικά οποιαδήποτε αλλαγή που μπορεί να ενσωματώσει ο χρήστης στη σελίδα.
Το ASP χρησιμοποιείται κυρίως για τη δημιουργία και εκτέλεση δυναμικών, διαδραστικών εφαρμογών διακομιστή Web. Επιτρέπει επίσης να συνδυάσετε σελίδες HTML, εντολές σεναρίων και στοιχεία COM για τη δημιουργία διαδραστικών ιστοσελίδων και ισχυρών εφαρμογών που βασίζονται στο Web. Επίσης διευκολύνει την ανάπτυξη και την τροποποίηση των εν λόγω εφαρμογών Web.
Μετά την αρχική κυκλοφορία του, κυκλοφόρησαν δύο κυκλοφορίες έκδοσης. Το ASP 2.0 εισήγαγε έξι ενσωματωμένα αντικείμενα στο πρωτότυπο, τα οποία ήταν Application, ASPError, Request, Response, Server και Session. Το ASP 3.0 εισήγαγε ορισμένες πρόσθετες βελτιώσεις όπως η μέθοδος Server.Transfer, η μέθοδος Server.Execute και ένα ενισχυμένο αντικείμενο ASPError. Επιπλέον, το ASP 3.0 επέτρεψε επίσης την προσωρινή αποθήκευση και βελτιστοποίησε τον κινητήρα για καλύτερη απόδοση. Ωστόσο, από τον Μάιο του 2013 δεν υπάρχουν προγραμματισμένες αναβαθμίσεις στην ASP.
Το ASP.NET είναι βασισμένο στο Common Language Runtime (CLR). Αυτό επιτρέπει στους προγραμματιστές να γράψουν κώδικα ASP.NET χρησιμοποιώντας οποιαδήποτε υποστηριζόμενη γλώσσα .NET. Οι ιστοσελίδες ASP.NET είναι επίσης γνωστές ως Web Forms. Περιέχουν στατική σήμανση (X) HTML. Περιέχει επίσης σήμανση που ορίζει τα στοιχεία ελέγχου Web και τα στοιχεία ελέγχου από την πλευρά του διακομιστή. Αυτό είναι όπου οι προγραμματιστές τοποθετούν όλο το περιεχόμενο rc για την ιστοσελίδα.
Στο ASP.NET Framework 2.0, εισήχθη ένα νέο μοντέλο με κωδικό πίσω. Αυτό επιτρέπει στο στατικό κείμενο να παραμείνει στη σελίδα .aspx, ενώ ο δυναμικός κώδικας παραμένει σε αρχείο .aspx.vb ή .aspx.cs ή .aspx.fs. Η θέση του δυναμικού κώδικα εξαρτάται από τη γλώσσα προγραμματισμού που χρησιμοποιείται.
Και οι δύο υποστηρίζουν το πλαίσιο μιας συνεδρίας. Ένα αντικείμενο συνεδρίασης αποθηκεύει πληροφορίες ή αλλάζει ρυθμίσεις για μια περίοδο λειτουργίας χρήστη. Ουσιαστικά, σημειώνει τα πάντα που ένας χρήστης βλέπει και κάνει σε μια σελίδα, ειδικά οποιαδήποτε αλλαγή που μπορεί να ενσωματώσει ο χρήστης στη σελίδα. Αυτό έχει ένα πλεονέκτημα, καθώς στην περίπτωση που το σύστημα καταρρεύσει ανάμεσα στις αλλαγές που ο χρήστης προσπαθεί να κάνει, οι αλλαγές δεν θα χαθούν όταν το σύστημα καταρρεύσει. Η σύνοδος θα κρατήσει τη μνήμη για το πού έπαψε ο χρήστης.
Η συνεδρία είναι ουσιαστικά ένα cookie ιστοσελίδας. Αποθηκεύει και ανακτά τιμές για έναν χρήστη καθώς ο χρήστης περιηγείται στην ιστοσελίδα. Οι μεταβλητές που αποθηκεύονται σε ένα αντικείμενο Session περιέχουν πληροφορίες για έναν μόνο χρήστη και είναι διαθέσιμες σε όλες τις σελίδες μιας εφαρμογής. Ορισμένες κοινές πληροφορίες που αποθηκεύονται σε μεταβλητές περιόδου σύνδεσης είναι το όνομα, το αναγνωριστικό και οι προτιμήσεις. Ο διακομιστής δημιουργεί ένα νέο αντικείμενο Session για κάθε νέο χρήστη και καταστρέφει το αντικείμενο Session όταν λήξει η περίοδος σύνδεσης.
Ορισμένες διαφορές μεταξύ ASP Session και ASP.NET Session:
- Στην ASP, η περίοδος λειτουργίας εξαρτάται από τη διαδικασία, ενώ στην ASP.NET η περίοδος λειτουργίας είναι ανεξάρτητη από τη διαδικασία.
- Στην ASP, η περίοδος σύνδεσης εξαρτάται από το Cookie, ενώ στην ASP.NET η περίοδος σύνδεσης είναι ανεξάρτητη από το cookie.
- Η κατάσταση συνόδου ASP δεν έχει εγγενή λύση για να συνεργαστεί με τα Web Farms. Η περίοδος ASP.NET μπορεί να αποθηκευτεί σε διακομιστή κατάστασης και SQL SERVER, ο οποίος μπορεί να υποστηρίζει πολλούς διακομιστές.
- Η περίοδος ASP λειτουργεί μόνο όταν το πρόγραμμα περιήγησης υποστηρίζει cookies, η περίοδος ASP.NET λειτουργεί ανεξάρτητα.
- Η κατάσταση συνόδου ASP εξαρτάται πολύ από τη διαδικασία IIS. Εάν γίνεται επανεκκίνηση του IIS, οι μεταβλητές περιόδου λειτουργίας ASP ανακυκλώνονται επίσης. Ενώ η συνεδρία ASP.NET μπορεί να είναι ανεξάρτητη από το περιβάλλον φιλοξενίας, έτσι η συνδιάσκεψη ASP.NET μπορεί να διατηρηθεί ακόμα και αν γίνει επανεκκίνηση του IIS.
- Η περίοδος ASP αντιμετωπίζει περιορισμούς εκμετάλλευσης διακομιστή. Καθώς οι χρήστες μετακινούνται από διακομιστή σε διακομιστή σε μια εκμετάλλευση διακομιστή Web, η κατάσταση της συνεδρίασής τους δεν τις ακολουθεί. Η κατάσταση συνόδου ASP.NET υποστηρίζει τις διαμορφώσεις διακομιστών διακομιστών. Μετακινείται σε ένα μοντέλο εκτός λειτουργίας, οπότε δεν αντιμετωπίζει το πρόβλημα του server server.