public virtual void AddAttribute( Attribute a ) { AttributeCollection ac = new AttributeCollection( Attributes ); if( ! ac.Matches( a ) ) { ArrayList al = new ArrayList(); if( Attributes != null ) al.AddRange( Attributes ); al.Add( a ); Attributes = (Attribute[]) al.ToArray( typeof(Attribute) ); } }