2014-01-29 2 views
0

Я задаю этот вопрос из любопытства. Я видел несколько сайтов, реализованных с использованием технологии MVC, и формирует URL-адрес, как показано ниже.MVC dynamic url template

http://companyname/Request/{requestnumber}/Updte 

В приведенном выше примере Запрос - это контроллер, а Update - действие. Может ли кто-нибудь помочь мне, что мы должны сделать внутри RegisterRoute, чтобы достичь этого.

Я пробовал под кодом, но не работал.

routes.MapRoute("testMap", 
       url: "{controller}/{*}/{action}", 
       defaults: new { controller="Home",action="Test"} 
       ); 

ответ

1

Попробуйте

routes.MapRoute("testMap", 
        url: "{controller}/{requestnumber}/{action}", 
        defaults: new { controller="Home", action="Test", requestnumber =RouteParameter.Optional} 
        ); 

вы можете удалить RouteParameter.Optional, если это является обязательным кандидатом.

1

Это должно работать:

routes.MapRoute("testMap", 
      url: "{controller}/{reqNumber}/{action}", 
      defaults: new { controller="Home",action="Test", reqNumber = UrlParameter.Optional} 
      );