Помощник для тега html a

есть ли помощник в asp.net MVC3

<a href="www.google.com">Go to Google </a>

?

Не на действие, а на статическую ссылку


person ridermansb    schedule 23.03.2011    source источник


Ответы (1)


Я не верю, что есть, но я не уверен, зачем вам это нужно. На самом деле вы получите больше кода:

<a href="http://www.google.com/">Go to Google</a>

<%: Html.Link("http://www.google.com/", "Go to Google") %>

@Html.Link("http://www.google.com/", "Go to Google")

Обновление: если вы хотите создать помощника Link(), как показано выше, вы должны использовать метод расширения:

 public static class LinkExtensions
 {
    public static MvcHtmlString Link(this HtmlHelper helper, string href, string text)
    {
        var builder = new TagBuilder("a");
        builder.MergeAttribute("href", href);
        builder.SetInnerText(text);

        return MvcHtmlString.Create(builder.ToString(TagRenderMode.Normal));
    }
 }
person dahlbyk    schedule 23.03.2011
comment
В классе 'html' нет метода "Ссылка". Хочу сделать более стандартно, ведь текстбокс, экшены, у всех есть дропбоксы Usage helpers. Так что ему не хватает (статическая ссылка) - person ridermansb; 23.03.2011
comment
Мне пришлось объявить первый параметр как this HtmlHelper<dynamic>, но иначе это сработало. - person Eric J.; 12.04.2011
comment
В этом случае у вас будет больше гибкости, если вы сделаете метод универсальным: Link<T>(this HtmlHelper<T> helper, ... - person dahlbyk; 12.04.2011