18 мая 2011 г.

ActionLink в виде картинки, для ASP.Net MVC. Способ №2

Некоторое время назад, я писал о одном способе превращения обычного ActionLink-а в картинку. Метод хороший, и я пользуюсь им до сих пор. Но вот, вчера сам меня нашел еще один способ это сделать.

Итак, наша задача - сделать ActionLink, в котором вместо текста ссылки отображалась бы картинка.
Решение:

<a href="<%= Url.Action("About") %>">
    <img src="/Content/_about.png" alt="About Us" />
</a>

Вот и все. Как по мне, так такой способ даже лучше предыдущего т.к. здесь читаемость кода поднимается в раза 2.

Кроме того, не стоит забывать, что ActionLink на странице преобразовывается в обычную, стандартную ссылку. Поэтому, в принципе, мы даже могли бы напрямую писать в HTML-е что-то типа этого:

<a href="/home/about">
    <img src="/Content/_about.png" alt="About Us" />
</a>

Результат один и тот же.
С передачей параметров здесь проблем также не будет.

Единственное, что для меня пока не понятно, так это - почему советуют не писать так, как мы это сделали в последнем примере (сразу в HTML).

Да и вообще, признаюсь, не знаю где разница в написании строк:

<%= Html.TextBox("txt1") %>
<input type="text" name="txt2" id="txt2" />

если результат на странице будет абсолютно одинаков.

Ну что же, буду разбираться.