简单的string.Format问题

时间:2011-08-30 09:11:07

标签: c# html asp.net-mvc-3 string.format

示例链接

<div style="float:right;"><a href="<%= Url.Content("~/Home/List") %>" class="button"><span>Return to List</span></a></div>

我希望能够将ID添加到我的模型的url的末尾,如下所示,在我的众多尝试之一中

<div style="float:right;">(string.Format(<a href=\"{0}\{1}" %>, <% Url.Content("~/Test/Edit")%>, <% Model.Test.ID %>) "class="button"><span>Edit</span></a></div>

我知道如何使用动作链接,但我希望保持相同的格式并生成一个按钮。

我知道这有效

<%: Html.ActionLink("Edit", "Edit", new { Id = Model.Test.ID }) %>

所以任何人都有解决方案的想法吗?

THX。

2 个答案:

答案 0 :(得分:2)

<div style="float:right;">
    <a href="<%: string.Format("{0}/{1}", Url.Content("~/Test/Edit"), Model.Test.ID) %>" class="button">
        <span>Edit</span>
    </a>
</div>

应该这样做,尽管你可以在这里使用Url.Action

<div style="float:right;">
    <a href="<%: Url.Action("Edit", "Test", new { id = Model.Test.ID }) %>" class="button">
        <span>Edit</span>
    </a>
</div>

使用Url.Action的主要好处是您没有将自己绑定到任何特定的URL路由方案,而是绑定到控制器和操作方法,从而允许您随时随地更改路由。

答案 1 :(得分:1)

如果你只想为它添加一个类

,你仍然可以使用actionlink
<%: Html.ActionLink("Edit", "Edit", new { @id = Model.Test.ID }, new { @class = "button" }) %>

这将产生与使用其他方法相同的东西。