0

私はMVCを初めて使用しています。これはどのようにして特定のController + Actionを指すようにサイトを設定し、次にWeb.configファイルでロケーション+サイトのルートのパスです(例:http://localhost:8080/)。すべての匿名でアクセスしてログインできるようにしてください。MVC3 with razor web.configデフォルトルート

私はその場所と経路で遊んでいますが、それを把握できず、Global.asax 、私はホーム+コントローラ+アクションとしてのインデックスに適切なルートを持っているかどうかはわかりません。ここで

はいくつかのコードです:

web.configファイル(スニペット)

<authentication mode="Forms"> 
    <forms loginUrl="~/Account/LogOn" timeout="2880"/> 
</authentication> 
<authorization> 
    <deny users="?" /> 
    <allow users="*" /> 
</authorization> 

私は、サイトのルートの<location path="">がどうあるべきかわかりません。

Global.asaxの(スニペット)そう

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

私はそれがホームコントローラアクションインデックスに行きたいサイトのGlobal.asaxの中にデフォルトルート、タイプ:http://localhost:8080/

ありがとうございます。

答えて

3

すでに第3パラメータMapRouteで行っています。

new { controller = "Home", action = "Index", id = UrlParameter.Optional } 

これらは、デフォルトのコントローラーとアクションを、あなたが望むとおりに指定します。

+2

私はhttp:// localhost:8080と入力することができるので、web.configの認証場所とパスについては何と思っていますが、現在はログインページに私を送りますアカウントコントローラ+ログオンアクション? –

+2

私の上記のコメントの理由は、サイト全体に適用され、ルートのweb.configにlocation + path要素を余分に置くように、私がフォーム認証用に設定した承認を維持したいということです。そして私はすでに設定を持っています。 –

+1

アクションまたはコントローラレベルで[Authorize]属性で制御します。また、グローバルフィルタとして適用することもできます。ホームコントローラーまたはそのIndexアクションに設定したように見えるかどうかを決めます。 – veblock