AXDファイルは実際のファイルではなく(物理的なコンテキスト内に存在します)、登録されたエイリアスはです。既定でASP.NETは、HTTP処理ルーチンによって提供される内部コンテキストでScriptResource.axd
& WebResource.axd
を使用します。あなたにルーティングしたい場合
:RouteCollection.IgnoreRoute
はすべての要求を無視し、任意のコントローラに(存在しないファイルの要求である)を通過AXD要求を防ぐために
はASP.NET Routing記事に暗示それらのAXDファイル、指さ がファイルを指す要求であっても、すべての要求を処理する場合、RouteCollection
オブジェクトの RouteExistingFiles
プロパティをtrueに設定すると、デフォルトの動作を上書きできます。 この値をtrueに設定すると、定義済みの パターンに一致するすべての要求がルーティングによって処理されます。
ルーティングで特定のURL リクエストを処理しないように指定することもできます。 によって経路が特定の要求を処理できないようにし、StopRoutingHandler
クラス を使用してそのパターンを処理する必要があることを指定します。 StopRoutingHandler
オブジェクトによって要求が処理されると、StopRoutingHandler
オブジェクトは、要求の追加処理をルートとしてブロックします。代わりに、 という要求は、ASP.NETページ、Webサービス、またはその他のASP.NET エンドポイントとして処理されます。
です。 example.com/WebResource.axd?d=XXXXX&t=ZZZZZZ
の場合、特定のアセンブリファイル内の埋め込みリソースの特定のコードスニペットが返される可能性があります。はMVCではなく、Webフォームでのみ使用されます。後にレンダリングされた特定のアセンブリから埋め込まれたリソースのコンテナとしてAXDの別名を、多くの場合、Webフォーム使用
<httpHandlers>
<add path="eurl.axd" verb="*" type="System.Web.HttpNotFoundHandler" validate="True" />
<add path="trace.axd" verb="*" type="System.Web.Handlers.TraceHandler" validate="True" />
<add path="WebResource.axd" verb="GET" type="System.Web.Handlers.AssemblyResourceLoader" validate="True" />
<add verb="*" path="*_AppService.axd" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" validate="False" />
<add verb="GET,HEAD" path="ScriptResource.axd" type="System.Web.Handlers.ScriptResourceHandler, System.Web.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" validate="False"/>
<add path="*.axd" verb="*" type="System.Web.HttpNotFoundHandler" validate="True" />
...
</httpHandlers>
注:
あなたは%Windir%\Microsoft.NET\Framework\[version number]\Config
でweb.configファイルを調べている場合は、このようなWebResource
&他のAXDパスが存在しますサーバーコントロールはアセンブリファイルを使用してページライフサイクル全体を実行するための事前定義されたスクリプトを保存するため、ASPXページによって異なります。しかし、MVC自体は、AXDエイリアスと同様の方法でリクエストを処理するHTTPハンドラであり、MVCは埋め込みリソースを使用するのではなくリソースファイルを直接取得するので(MVCにSystem.Web.UI.WebResource
またはSystem.Web.UI.Page.ClientScript.GetWebResourceUrl(this.GetType, [resource path])
を呼び出すなどのことはありません)、AXDエイリアスへのリクエスト無視してください。
その他の参照:
Just Where Is WebResource.axd?
What is WebResource.axd?
ここでの事である、あなたは、ウェブ上のフォームについて知っている必要があります。 Webフォームにはページライフサイクルがあり、mvcにはページライフサイクルがありません。要求ライフサイクルをサポートします。ルートとウェブページにルートがないのはそのためです。 –