2

一般的な ASP.NET WebForms アプリケーションの場合、Web ページは、実際の Web 要求を処理する IHttpHandler を実装する Page クラスから派生します。

ASP.NET MVC では、Web ページの基本クラスは System.Web.Mvc.ViewPage であり、これも Page クラスから派生し、IHttpHandler を実装します。

しかし、ASP.NET MVC Razor では、「cshtml」ファイルは、実際には IHttpHandler を実装していない System.Web.Mvc.WebViewPage から派生します。

IIS アーキテクチャによると、要求を処理するために、クラスは IHttpHandler を実装する必要がありますが、Razor ビュー エンジンの場合はそうではありません。どうしてそれが可能でしょうか?

4

1 に答える 1

1

このチート シートのリンク テキストを見てください。

ASP.NET MVC は WebForms IHttpHandler を使用しません。MvcRouteHandler から MvcHandler を使用しています。

ViewEngine で ViewPage クラスを呼び出します。MVC model2 アーキテクチャ スタイルはページ コントローラー スタイルではありません。

于 2010-09-04T06:56:40.030 に答える