Ejemplo n.º 1
0
        /// <summary>
        /// Gets the annotation elements for a <see cref="XAttribute"/>.
        /// </summary>
        /// <param name="attribute"></param>
        /// <returns></returns>
        IEnumerable <XElement> SerializeAttributes(XAttribute attribute)
        {
            Contract.Requires <ArgumentNullException>(attribute != null);

            // skip namespace attribute
            if (attribute.IsNamespaceDeclaration)
            {
                yield break;
            }

            // emit annotations on the attribute
            foreach (var annotation in attribute.Annotations <object>())
            {
                var obj = SerializeAnnotation(attribute, annotation);
                if (obj != null)
                {
                    obj.SetAttributeValue(NX_FOR, NX_FOR_ATTRIBUTE);
                    yield return(obj);
                }
            }
        }