2011-06-26 41 views

Trả lời

13

Bạn có thể làm một con đường wildcard:

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

Tôi không chắc chắn những gì yêu cầu của bạn, nhưng bạn có chắc bạn muốn vượt qua tên của bài viết để điều khiển? Bạn sẽ tốt hơn là chỉ cần chuyển ID sau đó thực hiện một lệnh SELECT từ cơ sở dữ liệu để lấy Tên?

Nếu bạn vẫn muốn có một URL như http://mysite.com/controller/action/123/name-of-article nhưng chỉ vượt qua trong ID bạn có thể sử dụng một tuyến đường như thế này

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

Sau đó hành động điều khiển của bạn

public ActionResult Edit(int id) 
{ 

} 
Các vấn đề liên quan