2011-06-26 16 views

Odpowiedz

13

Można zrobić wieloznaczny trasę:

MapRoute("{controller}/{action}/{*id}") 
0

Nie jestem pewien, co twoje wymagania są, ale czy jesteś pewien, że chcesz podać nazwę wyrobu do kontrolera? Czy lepiej byłoby po prostu przekazać identyfikator, a następnie wykonać polecenie SELECT z bazy danych, aby uzyskać nazwę?

Jeśli nadal chciał mieć URL jak http://mysite.com/controller/action/123/name-of-article ale przechodzą tylko w ID można użyć trasy jak to

routes.MapRoute(
       "MyNewRoute",   // Route name 
       "articles/edit/{id}/{name}",  // URL 
       new { controller = "Articles", action = "Edit", id = "" }, // Defaults 
       new[] { "YourApp.UI.Controllers" }      // Namespaces 
      ); 

wówczas działania kontroler

public ActionResult Edit(int id) 
{ 

} 
Powiązane problemy