0

C# MVC 3 Routing i には、コントローラー名 Category があります。コントローラーのサブメソッドは2つあります 1)Index 2)Detail

今、私の詳細ルーティング URl はこの「カテゴリ/名前」のようになりますが、「カテゴリ/すべての名前」ハード コードを追加したい 「-すべての」このハード コードをどのように追加したいですか?

    routes.MapRoute(
     "categorie", // Route name
     "Category/{id}/{no}", // URL with parameters
     new { controller = "Category", action = "details", id = "id",no=UrlParameter.Optional } // Parameter defaults
 );
    routes.MapRoute(
       "categories", // Route name
       "Category/{id}/{action}", // URL with parameters
       new { controller = "Category", action = "action", id = "id" } // Parameter defaults
   );



html page

<div class="grid_3" >
    <a class="companyanchor" href="/category/@Model.name/">@Model.Name</a>
</div>
4

2 に答える 2

0

私は最近MVCを使用していませんが、これが答えではありませんか?

routes.MapRoute("categories", // Route name        
    "Category/{id}"-for-all/{action}", // URL with parameters        
    new { controller = "Category", action = "action", id = "id" } // Parameter defaults    
);

...あなたの例で「名前」がどこから来ているのかわからない。

于 2012-09-17T02:34:44.987 に答える
0

あなたの質問を理解するのは難しいです.URLのハードコードされた部分について尋ねていることを理解していますか? このようなもの:



    routes.MapRoute(null,
    "{category}/Page{page}", // Matches /Football/Page567 
    new { controller = "Product", action = "List" }, // Defaults
    new { page = @"\d+" } // Constraints: page must be numerical
    ); 

于 2012-09-15T10:53:20.953 に答える