/// <summary> /// 设置Meta /// </summary> /// <param name="meta">Meta实体</param> public void SetMeta(MetaEntry meta) { if (meta == null || String.IsNullOrEmpty(meta.Name)) { return; } _metas[meta.Name] = meta; }
/// <summary> /// 设置keywords类型的meta /// </summary> /// <param name="content">设置的Keyword内容</param> public void SetMetaOfKeywords(string content) { if (string.IsNullOrEmpty(content)) { return; } MetaEntry meta = new MetaEntry("keywords", content); SetMeta(meta); }
///// <summary> ///// Logo Url(默认=~/images/logo.png) ///// </summary> ///// <remarks> ///// 个别浏览器不支持png透明图片,为了兼容这些浏览器需要输出一段特殊的css代码 ///// </remarks> //public string LogoUrl { get; set; } /// <summary> /// 设置description类型的meta /// </summary> /// <param name="content">设置的Description内容</param> public void SetMetaOfDescription(string content) { if (string.IsNullOrEmpty(content)) { return; } MetaEntry meta = new MetaEntry("description", content); SetMeta(meta); }
/// <summary> /// 合并meta1与meta2,Content用contentSeparator分隔 /// </summary> /// <param name="meta1">用于合并的MetaEntry</param> /// <param name="meta2">用于合并的MetaEntry</param> /// <param name="contentSeparator">Meta的多个内容之间的分隔符</param> public static MetaEntry Combine(MetaEntry meta1, MetaEntry meta2, string contentSeparator) { var newMeta = new MetaEntry(); Merge(newMeta._builder.Attributes, meta1._builder.Attributes, meta2._builder.Attributes); if (!String.IsNullOrEmpty(meta1.Content) && !String.IsNullOrEmpty(meta2.Content)) { newMeta.Content = meta1.Content + contentSeparator + meta2.Content; } return(newMeta); }
/// <summary> /// 附加Meta /// </summary> /// <param name="meta">Meta实体</param> /// <param name="contentSeparator">合并content时使用的分隔符</param> public void AppendMeta(MetaEntry meta, string contentSeparator) { if (meta == null || String.IsNullOrEmpty(meta.Name)) { return; } MetaEntry existingMeta; if (_metas.TryGetValue(meta.Name, out existingMeta)) { meta = MetaEntry.Combine(existingMeta, meta, contentSeparator); } _metas[meta.Name] = meta; }
/// <summary> /// 附加keywords类型的meta /// </summary> /// <param name="content">附加的Keyword内容</param> public void AppendMetaOfKeywords(string content) { MetaEntry meta = new MetaEntry("keywords", content); AppendMeta(meta, ","); }