.aspxページと.ashxページの違いは何ですか?コードから呼び出されて応答で返されたリクエストを処理する必要がある場合、ashxを使用しますが、より技術的な回答をお願いします。
Page
は特別な場合のハンドラです。
汎用Webハンドラー(*.ashx
、拡張ベースのプロセッサ)は、UIを持たず、@WebHandler
ディレクティブを含むすべてのWebハンドラーのデフォルトHTTPハンドラーです。
ASP.NETページハンドラー(*.aspx
)は、すべてのASP.NETページのデフォルトのHTTPハンドラーです。
組み込みのHTTPハンドラーには、Webサービスハンドラー(*.asmx
)とトレースハンドラー(trace.axd
)もあります。
MSDN says :
ASP.NET HTTPハンドラーは、ASP.NET Webアプリケーションに対する要求に応じて実行されるプロセス(「エンドポイント」と呼ばれることが多い)です。最も一般的なハンドラーは、.aspxファイルを処理するASP.NETページハンドラーです。ユーザーが.aspxファイルを要求すると、要求はページハンドラーを介してページによって処理されます。
以下の画像はこれを示しています。
2番目の質問について:
Ashxはaspxよりも多くの接続を処理しますか?
そうは思わないでください(しかし、少なくとも、少なくともそれは確かです)。
.aspx
は完全なライフサイクル(Init
、Load
、PreRender
)を使用し、ボタンのクリックなどに応答できます。.ashx
にはProcessRequest
メソッドが1つだけあります。
.aspxはレンダリングされたページです。ビューが必要な場合は、.aspxページを使用します。必要なのがバックエンド機能だけで同じビューにとどまる場合は、.ashxページを使用します。
特にexpressJSを使用して、nodeJでプログラムを作成したことがあるユーザー向け。 .ashx
は、next
関数を呼び出すミドルウェアと考えています。 .aspx
はcontrollerであり、res.redirect
、res.send
などの要求に実際に応答します。