• Kooboo CMS


    首先我们找到这个类。

    这个类有如下的方法:

     #region Title & meta
            [Obsolete("Use HtmlTitle")]
            public IHtmlString Title()
            {
                return HtmlTitle();
            }
            /// <summary>
            /// HTMLs the title.
            /// </summary>
            /// <returns></returns>
            public virtual IHtmlString HtmlTitle()
            {
                return HtmlTitle(null);
            }
            /// <summary>
            /// HTMLs the title.
            /// </summary>
            /// <param name="defaultTitle">The HTML title.</param>
            /// <returns></returns>
            public virtual IHtmlString HtmlTitle(string defaultTitle)
            {
                var title = string.IsNullOrEmpty(this.PageContext.HtmlMeta.HtmlTitle) ? defaultTitle : this.PageContext.HtmlMeta.HtmlTitle;
                if (!string.IsNullOrEmpty(title))
                {
                    return new HtmlString(string.Format("<title>{0}</title>", Kooboo.StringExtensions.StripAllTags(title)));
                }
                return new HtmlString("");
            }
    View Code

    其实我觉得大家有必要了解下IHtmlString这个接口。

    这个接口不是出自于CMS,而是系统内定义的。

    using System;
    
    namespace System.Web
    {
        // 摘要: 
        //     表示不应再次进行编码的 HTML 编码的字符串。
        public interface IHtmlString
        {
            // 摘要: 
            //     返回 HTML 编码的字符串。
            //
            // 返回结果: 
            //     HTML 编码的字符串。
            string ToHtmlString();
        }
    }
    

      关于这个接口的详细介绍我在网上也搜了一个,是MSDN上面的。不知道谁还有更详细的资料?

    下面是里面的最重要的一个方法:

            public virtual IHtmlString HtmlTitle(string defaultTitle)
            {
    
    
                var title = string.IsNullOrEmpty(this.PageContext.HtmlMeta.HtmlTitle) ? defaultTitle : this.PageContext.HtmlMeta.HtmlTitle;
                if (!string.IsNullOrEmpty(title))
                {
                    return new HtmlString(string.Format("<title>{0}</title>", Kooboo.StringExtensions.StripAllTags(title)));
                }
                return new HtmlString("");
            }

      上面的代码的意思是,如果当前上下文HtmlMeta.HtmlTitle为空,那么就取带入的标题。但是如果defaultTitle和HtmlMeta.HtmlTitle都为空的话,那么就返回空字符串。否则执行<title>{0}</title>.

  • 相关阅读:
    代理模式以及operator>()的重载
    asp.net 2.0中gridview里嵌套dropdownlist
    .Net的编码规范
    Google GMail使用技巧
    推荐一些我经常参考的ASP.NET2.0的学习网站
    petShop 4.0 的命名空间 以及各个项目模块的说明
    超强口误
    当每次鼠标点选GRIDVIEW每行的文本框时,该行会加亮
    ASP.NET2.0中Gridview中数据操作技巧
    ASP.NET中的DataGrid控件示例
  • 原文地址:https://www.cnblogs.com/kmsfan/p/Kooboo-CMS-Html-FrontHtml-HtmlTitle.html
Copyright © 2020-2023  润新知