2009-07-12 24 views

Trả lời

34

StackOverflow - Getting the name of the controller and action method in the view in ASP.NET MVC:

<%: ViewContext.RouteData.Values["Controller"] %> 
<%: ViewContext.RouteData.Values["Action"] %> 
+2

Lưu ý rằng 'ViewContext.RouteData.Values' là một' RouteValueDictionary' và các giá trị cần phải được đúc thành một chuỗi để so sánh, ví dụ '<% = (string) ViewContext.RouteData.Values ​​[" Action "] ==" Mục lục" ? ... '(và tiết kiệm cho mình 10 phút đau đớn và mong muốn bạn có thể sử dụng RoR hoặc thậm chí * thở hổn hển * PHP). –

+2

Tại sao bạn sẽ truyền sang chuỗi khi bạn có thể sử dụng an toàn hơn. ToString()? –

3

Tốt hơn cái gì? Trang cái nên có một ViewContext cho phép bạn lấy RouteData. Bạn sẽ có thể nhận được tên của bộ điều khiển và hành động từ RouteData, sử dụng các phím "điều khiển" và "hành động".

0

Trong MVC 4.0 Xử lý như dưới đây.

Bộ điều khiển: @ ViewContext.RouteData.Values ​​[ "điều khiển"]
Action: @ ViewContext.RouteData.Values ​​[ "Action"]

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