本文整理汇总了C#中IContent.Images方法的典型用法代码示例。如果您正苦于以下问题:C# IContent.Images方法的具体用法?C# IContent.Images怎么用?C# IContent.Images使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类IContent
的用法示例。
在下文中一共展示了IContent.Images方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: GetMarkup
/// <summary>
/// Gets the markup for the tag based upon the passed in parameters.
/// </summary>
/// <param name="currentPage">The current page.</param>
/// <param name="parameters">The parameters.</param>
/// <returns></returns>
public override string GetMarkup(IContent currentPage, IDictionary<string, string> parameters)
{
var src = parameters["image"];
if (!src.StartsWith("http") && !src.StartsWith("/"))
{
var image = currentPage.Images().SingleOrDefault(x => x.Slug == src);
if (image != null)
{
src = image.Url();
}
}
if (parameters.ContainsKey("width"))
src += ((src.IndexOf("?", StringComparison.InvariantCulture) == -1) ? "?" : "&") + "width=" + parameters["width"];
if (parameters.ContainsKey("height"))
src += ((src.IndexOf("?", StringComparison.InvariantCulture) == -1) ? "?" : "&") + "height=" + parameters["height"];
if (parameters.ContainsKey("mode"))
src += ((src.IndexOf("?", StringComparison.InvariantCulture) == -1) ? "?" : "&") + "mode=" + parameters["mode"];
var sb = new StringBuilder();
sb.AppendFormat("<img src=\"{0}\"", src);
if (parameters.ContainsKey("alt"))
sb.AppendFormat(" alt=\"{0}\"", parameters["alt"]);
if (parameters.ContainsKey("title"))
sb.AppendFormat(" title=\"{0}\"", parameters["title"]);
if (parameters.ContainsKey("class"))
sb.AppendFormat(" class=\"{0}\"", parameters["class"]);
if (parameters.ContainsKey("width"))
sb.AppendFormat(" width=\"{0}\"", parameters["width"]);
if (parameters.ContainsKey("height"))
sb.AppendFormat(" height=\"{0}\"", parameters["height"]);
sb.Append(" />");
if(parameters.ContainsKey("link"))
{
parameters.AddOrUpdate("text", sb.ToString());
return new LinkTag().GetMarkup(currentPage, parameters);
}
return sb.ToString();
}