我正在编写一个ASP.NET MVC 5应用程序,我最近在一个页面中添加了锚标记,其中包含了许多操作。我们的想法是,当您返回索引时,您还提供了该操作所涉及的projectID,它会将您从页面跳转到与该projectID匹配的锚点。
这就是说我有一个页面,我试图在视图上创建一个链接到主项目页面,但提供一个片段,以便它跳转到相应的部分。但是我因此无法使用@ Html.ActionLink或任何其他方法来适当地将我带到片段中。我将说明。
<a href="~/backlog/# + @model.ProjectID"><div class="btn">Done</div></a>
@{ <a href="~/backlog/# + @model.ProjectID"><div class="btn">Done</div></a> }
这是我最近一直试图做的事情,但是这个观点似乎并不知道如何处理它。
然后我尝试了更多MVC风格的方法。
@Html.ActionLink("Done", "index", "backlog", null, null, @model.ProjectID.toString());
有一个&#34; mega&#34;我尝试使用七个参数的重载,但它也不喜欢我试图以这种方式将模型属性作为片段传递。
最终,我想提出一个简单的锚标记,一旦处理就会出现
<a href="~/backlog/#projectID"></a>
如果可能的话,所有的帮助都表示赞赏。
答案 0 :(得分:1)
你仍然可以使用&#34; MVC&#34;如果您使用正确的named parameters:
,请使用ActionLink进行操作public static MvcHtmlString ActionLink(
this HtmlHelper htmlHelper,
string linkText,
string actionName,
string controllerName,
string protocol,
string hostName,
string fragment,
object routeValues,
object htmlAttributes
)
如果您同时使用{{3}},那么人们实际上可以阅读它:
@Html.ActionLink("Done", "index", "backlog", protocol: null, hostName: null, fragment: Model.ProjectID.toString(), routeValues: null, htmlAttributes: null)
答案 1 :(得分:0)
以下内容应该有效:
<a href="@Url.Action("Done")#@Model.ProjectID">backlog</a>