主な違い: ASPはActive Server Pagesの略です。 それは一般にクラシックASPまたはASPクラシックとして知られています。 マイクロソフトによって開発およびリリースされたサーバーサイドのスクリプト環境です。 ASP.NETはサーバーサイドのWebアプリケーションフレームワークです。 ASPXはActive Server Pages Extendedの略です。 動的Webページを作成するためのWeb開発用に設計されています。 どちらもセッションのコンテキストをサポートしています。 セッションオブジェクトは、ユーザーセッションに関する情報を格納したり、ユーザーセッションの設定を変更したりします。 基本的には、ユーザーがページ上で見たり行ったりするすべてのこと、特にユーザーがそのページに組み込む可能性のある変更をすべて記録します。
ASPは主に動的でインタラクティブなWebサーバーアプリケーションの作成と実行に使用されます。 また、HTMLページ、スクリプトコマンド、およびCOMコンポーネントを組み合わせて、インタラクティブなWebページと強力なWebベースのアプリケーションを作成することもできます。 それはまた、前記ウェブアプリケーションを開発し修正することをより容易にする。
その最初のリリースの後に、2つのバージョンリリースがありました。 ASP 2.0では、Application、ASPError、Request、Response、Server、およびSessionの6つの組み込みオブジェクトがオリジナルに導入されました。 ASP 3.0では、Server.Transferメソッド、Server.Executeメソッド、および拡張ASPErrorオブジェクトなど、いくつかの追加の機能強化が導入されました。 さらに、ASP 3.0ではデフォルトでバッファリングも有効にされ、パフォーマンス向上のためにエンジンが最適化されました。 ただし、2013年5月現在、ASPへの計画的なアップグレードはありません。
ASP.NETは、共通言語ランタイム(CLR)上に構築されています。 これにより、プログラマはサポートされている.NET言語を使用してASP.NETコードを書くことができます。 ASP.NET Webページは一般にWebフォームとも呼ばれます。 それらは静的(X)HTMLマークアップを含みます。 サーバーサイドのWebコントロールとユーザーコントロールを定義するマークアップも含まれています。 開発者がWebページのすべてのRCコンテンツを配置する場所です。
ASP.NET Framework 2.0では、新しい分離コードモデルが導入されました。 これにより、動的テキストは.aspx.vbファイル、.aspx.csファイル、または.aspx.fsファイルに残りながら、静的テキストを.aspxページに残すことができます。 動的コードの場所は、使用されるプログラミング言語によって異なります。
どちらもセッションのコンテキストをサポートしています。 セッションオブジェクトは、ユーザーセッションに関する情報を格納したり、ユーザーセッションの設定を変更したりします。 基本的には、ユーザーがページ上で見たり行ったりするすべてのこと、特にユーザーがそのページに組み込む可能性のある変更をすべて記録します。 ユーザーが行おうとしていた変更の間にシステムがクラッシュした場合、システムがクラッシュしたときに変更が失われることはありません。 セッションは、ユーザーが中断した場所のメモリを保持します。
セッションは基本的にWebページのCookieです。 ユーザーがWebページをナビゲートするときに、ユーザーの値を保存および取得します。 Sessionオブジェクトに格納されている変数は、1人のユーザーに関する情報を保持しており、1つのアプリケーションのすべてのページで利用できます。 セッション変数に格納されている一般的な情報には、名前、ID、および設定があります。 サーバーは、新しいユーザーごとに新しいSessionオブジェクトを作成し、セッションが期限切れになるとSessionオブジェクトを破棄します。
ASPセッションとASP.NETセッションのいくつかの違いは次のとおりです。
- ASPでは、セッションはプロセスに依存しますが、ASP.NETではセッションはプロセスに依存しません。
- ASPでは、セッションはCookieに依存しますが、ASP.NETでは、セッションはCookieに依存しません。
- ASPセッション状態には、Webファームと連携するための固有の解決策はありません。 ASP.NETセッションは、複数のサーバーをサポートできる状態サーバーとSQL SERVERに格納できます。
- ブラウザがCookieをサポートしている場合にのみASPセッションが機能し、ASP.NETセッションは関係なく実行されます。
- ASPセッション状態は、IISプロセスに大きく依存しています。 IISがASPを再起動すると、セッション変数もリサイクルされます。 一方、ASP.NETセッションはホスティング環境から独立しているため、IISを再起動してもASP.NETセッションは維持できます。
- ASPセッションはサーバーファームの制限に直面します。 ユーザーがWebサーバーファーム内でサーバー間を移動するとき、ユーザーのセッション状態はそれに従いません。 ASP.NETセッション状態は、サーバーファーム構成をサポートしています。 プロセス外モデルに移行するため、サーバーファームの問題に直面することはありません。