我有类似MVC的东西(我使用razor使用MVC c#):
@Html.ActionLink("Edit", "EditProject", new { id = item.ProjectID})
产生的东西就像我查看源代码一样:
<a href="/iDVI/Project/EditProject/535">Edit</a>
注意535是具有item.ProjectID的结果。 这可以。我喜欢做的是为这个编辑链接添加一个id。类似的东西:
<a href="/iDVI/Project/EditProject/535" id="Projectid">Edit</a>
我该怎么做我知道使用新的{id = ...}会创建一个id,但id已经用于我最初需要做的事情。
我现在需要给链接一个id?
答案 0 :(得分:3)
使用:
@Html.ActionLink("Edit", "EditProject", new { id = item.ProjectID }, new { id = "Projectid" })
答案 1 :(得分:2)
使用它时,您必须查看方法的签名。 当你写道:
@Html.ActionLink("Edit", "EditProject", new { id = item.ProjectID})
您使用了以下重载:
HtmlHelper.ActionLink(string linkText,string ActionName,object routeValues)
因此,这就是您将item.ProjectID作为网址的一部分的原因。在这种情况下,它是一个routeValue。
您正在寻找的重载可能就是这个:
HtmlHelper.ActionLink(string linkText,string ActionName,object routeValues,object htmlAttributes)
使用此重载指定您要将变量item.ProjectID用作url的一部分以及链接的属性:
@Html.ActionLink("Edit", "EditProject", new { id = item.ProjectID}, new { id = item.ProjectID })
如果你真的想拼出变量的名字,你会写:
@Html.ActionLink("Edit", "EditProject", new { id = item.ProjectID}, new { id = @"Projectid" })
这为您提供了所需的输出。
答案 2 :(得分:0)
尝试
@Html.ActionLink("Edit", "EditProject", null, new { id = item.ProjectID})