/// <summary> /// 移除一个属性 /// </summary> /// <param name="attribute"></param> internal void RemoveAttribute(DomAttribute attribute) { lock ( SyncRoot ) { _attributes.Remove(attribute); } }
/// <summary> /// 添加一个属性 /// </summary> /// <param name="name">属性名</param> /// <param name="value">属性值</param> /// <returns>添加后的属性</returns> internal IHtmlAttribute AddAttribute(string name, string value) { lock ( SyncRoot ) { if (_attributes.Contains(name))//容器自身会执行不区分大小写的查找 { throw new InvalidOperationException(string.Format(CultureInfo.InvariantCulture, "元素已经存在名为 \"{0}\" 的属性。", name)); } /* * if ( !attributeNameRegex.IsMatch( name ) ) * throw new FormatException( "属性名称格式不正确" ); */ var attribute = new DomAttribute(this, name, value); _attributes.Add(attribute); return(attribute); } }