2

以下のようなサイト構造で

サイト構造

およびルート設定を次のように

public static void RegisterRoutes(RouteCollection routes)
        {
            routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
            routes.MapRoute(
                name: "Default",
                url: "{controller}/{action}/{id}",
                defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional }
            );
        }

次に に移動するとhttp://localhost:23233、ルートに index.cshtml が表示されます。ルートの index.cshtml の名前を変更すると、views/home フォルダーにインデックスが表示されます。これはよくわかりません。すべてのビューがコントローラーによって返されるわけではありませんか? 誰かが私にこれを説明できますか?

4

2 に答える 2

2

~/Index.cshtmlスタンドアロンのWebページであり、コントローラーは必要ありません。Web.configの次の設定を使用して、Webページを無効にできます。

<appSettings>
  <add key="webpages:Enabled" value="false"/>
</appSettings>
于 2012-11-19T18:07:59.330 に答える
1

これは以前には見たことがありませんが、ルートのindex.cshtmlとdefault.cshtmlは、古いasp.netアプリケーションで扱われていたindex.htmlとdefault.htmlとして扱われます。asp.netからmvcに移行する人々にとっては理にかなっていると思います。

参照: http: //forums.asp.net/t/1577234.aspx/1

于 2012-11-19T14:48:39.760 に答える