Как насчет написания помощника:
private static Random _random = new Random();
public static MvcHtmlString RandomImage(this HtmlHelper htmlHelper)
{
var img = new TagBuilder("img");
var urlHelper = new UrlHelper(htmlHelper.ViewContext.RequestContext);
var number = _random.Next(1, 4);
var src = urlHelper.Content(string.Format("~/img{0}.gif", number));
img.Attributes["src"] = src;
img.Attributes["border"] = "0";
return MvcHtmlString.Create(img.ToString());
}
Что вы можете использовать на своей странице:
<%= Html.RandomImage() %>
И если вы хотите также создать якорь:
public static class HtmlExtensions
{
private class Image
{
public string Src { get; set; }
public string Href { get; set; }
}
private static Random _random = new Random();
private static Image[] _images = new[]
{
new Image { Src = "img1.gif", Href = "http://www.example1.com" },
new Image { Src = "img2.gif", Href = "http://www.example2.com" },
new Image { Src = "img3.gif", Href = "http://www.example3.com" }
};
public static MvcHtmlString RandomImage(this HtmlHelper htmlHelper)
{
var anchorTag = new TagBuilder("a");
var randomImage = _images[_random.Next(0, _images.Length)];
anchorTag.Attributes["href"] = randomImage.Href;
var imageTag = new TagBuilder("img");
imageTag.Attributes["src"] = randomImage.Src;
imageTag.Attributes["border"] = "0";
anchorTag.InnerHtml = imageTag.ToString();
return MvcHtmlString.Create(anchorTag.ToString());
}
}