我尝试从部分视图调用我的UsersController中的一个操作方法Details,它将id作为参数。我的局部视图中的链接就像这样
@Html.ActionLink("My Account", "Details", "Users", routeValues: null, htmlAttributes: new { id = User.Identity.GetUserId() })
这是我的ActionMethod
public ActionResult Details(long? id)
{
if (id == null)
{
return new HttpStatusCodeResult(HttpStatusCode.BadRequest);
}
User user = db.Users.Find(id);
if (user == null)
{
return HttpNotFound();
}
return View(user);
}
即。脚手架生成的一个非常基本的动作方法。 现在的问题是,当我点击链接时,参数' id'永远不会附加到网址。网址看起来像这样
localhost:8888/Users/Details
什么时候应该在最后添加id值。 有谁知道我在哪里出错?
答案 0 :(得分:2)
请勿尝试将其作为htmlAttribute
传递。像这样传递:
@Html.ActionLink("My Account", "Details", "Users", new { id = User.Identity.GetUserId() }, null)