从视图页面内部,如何在不从模型中获取此数据的情况下从url / controller / action / id引用id?
答案 0 :(得分:8)
您可以尝试使用viewContext:
<% =ViewContext.RouteData.Values["id"] %>
如果你把它放在控制器中的viewdata中,你仍然可以通过ViewData [“id”]得到它,但如果这样做,你也可以把它放在模型中。
你真的应该从模型中得到它,因为之前的选项对我来说似乎是一种代码味道。
答案 1 :(得分:0)
您可以使用RouteData,但不应该使用。
MVC的整个结构表示请求将路由到特定控制器上的特定操作。然后控制器将返回一个视图,视图不再访问url参数。
如果您想访问该ID,您应将其放入视图模型或查看数据并访问该视图中的数据。
public ActionResult YourAction(int id)
{
ViewData["id"] = id;
return View("MyView");
}
然后在视图中......
<%= ViewData["id"] %>
答案 2 :(得分:-1)
您可以通过ViewData
ViewData["id"] = id;
然后在视图中,您可以调用此ViewData["id"]
来提取您的值
保