0

カスタムasp.netルートをに登録しましたRouteTable.Routes

routes.MapPageRoute(
            "View Service",                    
            "home/services/{*ServiceName}", 
            "~/home/displayservice.aspx"   
        );

私のアプリケーションはASP.NET4.0ルーティングシステムを使用しており、Visual StudioからWebサイトを実行してデバッグすると、開発マシンですべてが正常に機能します。

サイトをIIS7に移動すると、に移動するときにルーティングが実行されません。

http://new.komplus.ua/home/services/viruses/antivirus/

またはルーティングシステムによって処理されることになっている他のパス。その結果、サーバーから404エラーが発生します。

global.asaxと/home/displayservice.aspxをWebサーバーにコピーし、更新後にWebサイトとアプリプールを再起動したと確信していますが、ルーティングはまだ行われません。

その他のルーティングされていないページは、正常に読み込まれます。

VS2010デバッグ環境と比較して、ASP.NET 4ルーティングを機能させるために実行する必要があるIISの特定の構成はありますか?

4

1 に答える 1

0

ASP.NET 4.0 ルーティングが IIS7 で機能するには、web.config で webServer 要素が宣言されている必要があります。例:

<system.webServer>     
  <modules runAllManagedModulesForAllRequests="true">     
   </modules>     
</system.webServer> 

これは、web.config でこのディレクティブがなくてもルーティングが行われる Visual Studio 環境では要件ではありません。

于 2011-10-05T15:53:25.423 に答える