Подтвердить что ты не робот

Как сгенерировать Html.ActionLink со значком

Я начинаю изучать ASP.NET MVC и имею проблему, как сгенерировать код с Html.ActionLink следующим образом:

<a href="~/Views/Home/Create.cshtml" class="btn btn-primary">
    <i class="icon-pencil icon-white"></i>
    <span>
        <strong>Create</strong>
    </span>            
</a>

пожалуйста.

4b9b3361

Ответ 1

Html.ActionLink() поддерживает только текстовые ссылки.

Вы должны использовать <a href="@Url.Action(...)"> для более сложных ссылок.

Ответ 2

Я хотел добавить к ответу SLaks.

Использование <a href="@Url.Action(...)"> с тем, что хотел пользователь2567619.

<a href="@Url.Action("Create", "Home")" class="btn btn-primary">
    <i class="icon-pencil icon-white"></i>
    <span>
        <strong>Create</strong>
    </span>            
</a>

Я думаю, стоит упомянуть, что @Url.Action может принимать такие параметры:

@Url.Action(string actionName, string controllerName) 

В то время как @Html.ActionLink может принимать такие параметры, как это:

@Html.ActionLink(string linkText, string actionName, string controllerName) 

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

Изменить

Как отметил Peck_conyon, для @Url.Action и @Html.ActionLink это всего лишь один из десяти различных методов перегрузки.
Для документации по UrlHelper.Action посмотрите здесь.
Для документации по LinkEtensions.ActionLink посмотрите здесь.

Ответ 3

Если это на странице "Макет", вы можете использовать это, я думаю, это может помочь:

    <li>@Html.ActionLink(" Login", "Index", new { Controller = "Login", Area = "Security" }, new { @class = "glyphicon glyphicon-log-in" })</li>

Ответ 4

@Html.ActionLink("Edit","Edit","",new { @class= "btn btn-primary" })

Результат введите описание изображения здесь

Ответ 5

Прост как это:  @Html.ActionLink( "Название", "Действие", null, new {@ class= "btn btn-info fa fa-pencil" })