Example #1
0
        /// <summary>
        /// 根据标签名获取所有同标签名的子元素标签
        /// </summary>
        /// <param name="tagName"></param>
        /// <returns></returns>
        public override ElementCollection <Tag> GetChildTagsByTagName(string tagName)
        {
            ElementCollection <Tag> tags = base.GetChildTagsByTagName(tagName);

            //处理ForEachTag标签
            if (this.Else != null)
            {
                if (tagName.Equals(this.Else.TagName, StringComparison.InvariantCultureIgnoreCase))
                {
                    tags.Add(this.Else);
                }
                tags.AddRange(this.Else.GetChildTagsByTagName(tagName));
            }
            return(tags);
        }
Example #2
0
        /// <summary>
        /// 获取所有具有同名称的模板列表.
        /// </summary>
        /// <param name="name"></param>
        /// <returns></returns>
        public ElementCollection <Template> GetChildTemplatesByName(string name)
        {
            if (string.IsNullOrEmpty(name))
            {
                throw new ArgumentNullException("name");
            }

            ElementCollection <Template> items = new ElementCollection <Template>();

            foreach (Template template in TagContainer.ChildTemplates)
            {
                if (name.Equals(template.Name, StringComparison.InvariantCultureIgnoreCase))
                {
                    items.Add(template);
                }
                items.AddRange(template.GetChildTemplatesByName(name));
            }
            return(items);
        }
Example #3
0
        /// <summary>
        /// 根据标签名获取所有同标签名的子元素标签
        /// </summary>
        /// <param name="tagName"></param>
        /// <returns></returns>
        public override ElementCollection <Tag> GetChildTagsByTagName(string tagName)
        {
            ElementCollection <Tag> tags = base.GetChildTagsByTagName(tagName);

            //处理ElseIf标签列表
            foreach (IfConditionTag elseif in this.ElseIfs)
            {
                if (tagName.Equals(elseif.TagName, StringComparison.InvariantCultureIgnoreCase))
                {
                    tags.Add(elseif);
                }
                tags.AddRange(elseif.GetChildTagsByTagName(tagName));
            }
            //处理Else标签
            if (this.Else != null)
            {
                if (tagName.Equals(this.Else.TagName, StringComparison.InvariantCultureIgnoreCase))
                {
                    tags.Add(this.Else);
                }
                tags.AddRange(this.Else.GetChildTagsByTagName(tagName));
            }
            return(tags);
        }