asp.net
  • asp.net-mvc-2
  • 2010-10-19 2 views 0 likes 
    0

    Я хочу вернуть следующие выходные данныес помощью Html.ActionLink но не HTML кодирования

    <a href="#"><img src="/images/icons/tick.png" alt="" />More info</a> 
    

    Если я сделать следующее содержание в HTML закодирован.

    <%= Html.ActionLink("<img src='/images/icons/tick.png' />More info", "OrderRegion", "Campaign", new {id = Model.Campaign.Id}, null) %> 
    

    Как я могу отключить кодировку html?

    +0

    Ваш код не соответствует вашему выходу. В вашем представлении используется только «#» для URL, тогда как ваш код означает, что вы хотите, чтобы URL-адрес Action. – RedFilter

    ответ

    3

    вы можете создать HtmlHelper этой

    public static class HtmlHelpers 
    { 
        public static string MyActionLink(this HtmlHelper htmlHelper, string linkText, string actionName, string controllerName, object routeValues, object htmlAttributes) 
        { 
         var tagActionLink = htmlHelper.ActionLink("[replace]", actionName, controllerName, routeValues, htmlAttributes).ToHtmlString(); 
         return tagActionLink.Replace("[replace]", linkText); 
        } 
    } 
    

    в .aspx:

    <%= Html.MyActionLink("<img src='/images/icons/tick.png' />More info", "OrderRegion", "Campaign", new {id = 15}, null) %> 
    
    +0

    Вы должны использовать 'TagBuilder'. – SLaks

    +1

    Можно ли сделать что-то подобное, но используя Ajax.ActionLink? – CallumVass

    +0

    Если у вас возникли проблемы с поиском метода ActionLink в классе HtmlHelper, это метод расширения и может быть найден путем добавления инструкции 'using System.Web.Mvc.Html;'. –

    6

    Я думаю, что вы лучше использовать Url.Action здесь, например:

    <a href="<%= Url.Action("OrderRegion", "Campaign", new {id = Model.Campaign.Id}) %>"> 
        <img src="/images/icons/tick.png" alt="" />More info 
    </a> 
    
    0

    Если вы строят MvcHtmlString и хотят включить абсолютный путь в стиле помощника, вы можете использовать

    VirtualPathUtility.ToAbsolute("~/") 
    

    , а затем добавить текст ссылки, контроллер и действия с фантастическими HTML/entites в виде строковых литералов в конструкции MvcHtmlString.

    Смежные вопросы