Простая строка. Формат вопроса - PullRequest
1 голос
/ 30 августа 2011

Пример ссылки

<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 ]

2 голосов
/ 30 августа 2011
<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 голос
/ 30 августа 2011

Вы все еще можете использовать actionlink для этого, если вы просто хотите добавить к нему класс

<%: Html.ActionLink("Edit", "Edit", new { @id = Model.Test.ID }, new { @class = "button" }) %>

Это выдаст то же самое, что и при использовании другого метода.

...