2009-07-20 7 views
0

ルートが処理された方法を変更したい場合は、MVCプロジェクトまたはでMVCフレームワークを変更する必要がありますか?例えばASP.NET MVCのカスタマイズ - フレームワークを継承または変更する

あなたはRegisterRoutes Global.asax.csのにおける標準コード持って言うことができます:

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 = "" } // Parameter defaults 
    ); 

} 

をしかし、あなたが本当に起こるしたいものを言うことができますカスタムクラスのインターセプトすべての着信要求を持っていることですそれらを特別な方法でルーティングします。 MVCフレームワーククラスから継承してからカスタマイズするか、実際にフレームワークコードを変更する必要がありますか?

答えて

5

拡張すると、カスタムRouteHandlerを書くだけで済みます。で

ルック:

ASP.NET MVC, Manipulating URL Structure

Developing Custom RouteHandler

またはWeb上の他のplanety。

EDIT:

あなたはRouteBaseを拡張し、ルートに追加することで、より行うことができます。

routes.Add("CoolRouter", new CoolRouter()); 
+0

+1次に、どのようにあなたは、これがWeb.configファイルの事である代わりに、標準のカスタム1を使用するようにMVCプロジェクトを教えていますか? – BuddyJoe

+1

ここに例があります: http://stackoverflow.com/questions/755579/asp-net-mvc-manipulating-url-structure –

+0

マイク、これらは素晴らしいスタートです。ありがとう。 – BuddyJoe

関連する問題