Пример #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;
                }

            }
        }