MVC HTML操作链接帖子ID

本文关键字:ID 链接 HTML 操作 MVC | 更新日期: 2023-09-27 18:20:16

我有一个技能列表,我希望显示背书人,为了实现这一点,我决定使用HTML操作链接发布ID,然后在另一个div类中检索背书人:

div类将所有技能显示为超链接:

 <div class="skill">
 @foreach (var skl in model.userskills)
 {
 @Html.ActionLink(@skl.userskill_content , "Index" , "Home" , new  {skl.userskill_id} , null);
 </div>

显示所有背书人的div类:

<div class="endorsers">
@foreach (var skill in model.endorsers)
{
@skl.user_forename  @skil._user_surname
}
</div>

我如何将"new{skl.userskill_id}"传递到控制器中,以便每个背书人都能基于这个特定的userskill_id?因此,如果我点击这个超链接"C#"技能,它将加载一个基于"C#"ID的背书人列表。

我希望这是清楚的。感谢

MVC HTML操作链接帖子ID

您需要在参数之前添加id=

 @Html.ActionLink(@skl.userskill_content ,   
 "Index" , "Home" , new  {id = skl.userskill_id} , null);

您还必须确保控制器操作是一个HTTP get,因为ActionLink会调用它,还必须确保您的控制器参数匹配,即

public ActionResult AnAction(int id)

您需要在参数之前添加Parametername=。类似于动作参数名称Id而不是

  @Html.ActionLink(@skl.userskill_content ,   
         "Index" , "Home" , new  {id = skl.userskill_id} , null);

  @Html.ActionLink(@skl.userskill_content ,   
         "Index" , "Home" , new  {parameterName= skl.userskill_id} , null);

传递相同名称的参数。您已经在控制器中定义了操作。