2011-09-28 6 views
5

私は既存のASP.NET 3.5 WebFormsプロジェクトを持ち、プロジェクトにASP.NET MVCを追加しました。既存のページは正常に動作し、新しいコントローラは&のように表示されます。ただし、IIS 7に展開すると、既定のドキュメント(default.aspx)は機能しなくなります。私は明示的にそれを入力すれば私はそれに到達することができますが、'xyz.com'は動作しません - 私は404を取得します。対照的に、それはカッシーニでうまく動作します。MVCを追加してWebFormsプロジェクトにルーティングした後、IISの既定のドキュメント(default.aspx)が機能しない

新しいMVCを保持している間に、どのようにデフォルトドキュメントが再び機能するのですか?

答えて

9

を私はGlobal.asx.csファイルに以下を追加し、既定のドキュメントが再び動作します。

public static void RegisterRoutes(RouteCollection routes) 
    { 
     // *** This Line *** 
     routes.IgnoreRoute("");          // Required for the default document in IIS to work 
     // ***************** 
     routes.IgnoreRoute("{resource}.axd/{*pathInfo}"); 
     routes.IgnoreRoute("{resource}.aspx/{*pathInfo}"); 

     routes.MapRoute(
      "Default",            // Route name 
      "{controller}/{action}/{id}",       // URL with parameters 
      new { controller = "Home", action = "Index", id = "" } // Parameter defaults 
     ); 
    } 

    protected void Application_Start(Object sender, EventArgs e) 
    { 
     RegisterRoutes(RouteTable.Routes); 
    } 
+0

ありがとう、これは私の問題を解決するのに役立ちました! – Netricity

0

IISアプリケーションでデフォルト文書が有効になっていて、一覧にdefault.aspxがありますか?これらを再確認するだけで、default.aspxページの提供に影響することは考えられません。 IISは、このようなものになります。

IIS Default Document

+0

うん、それがあります。明確にするために、MVCとルーティングがプロジェクトに追加されるまで、IIS 7では正常に動作していました。 – GiddyUpHorsey

関連する問題