public void GetMemberDocumentationTest()
        {
            var property = GetType().GetProperty(nameof(TestProperty));
            var info     = MemberDocumentationManager.GetMemberDocumentation <TestMemberDocumentationInfo>(property);

            Assert.AreEqual("test", info.Test);
            Assert.AreEqual("test2", info.Test2);
            Assert.AreEqual("test3", info.Test3);
        }
        /// <summary>
        ///
        /// </summary>
        /// <typeparam name="TModel"></typeparam>
        /// <param name="field"></param>
        /// <returns></returns>
        private TModel GetSynonymInfo <TModel>(FieldInfo field) where TModel : EnumSynonymInfo, new()
        {
            var info = new TModel();

            info.Key = field.DeclaringType.Name + Strings.Point + field.Name;

            var synonymsNodes = MemberDocumentationManager.GetElementNodes(field);

            foreach (var node in synonymsNodes)
            {
                var prop = _propertyInfos.FirstOrDefault(f => f.Key == node.Name);
                prop.Value?.SetValue(info, node.InnerText);
            }

            return(info);
        }
Example #3
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="assembly"></param>
        /// <returns></returns>
        public static SummaryDocument GetSummaryDocument(Assembly assembly)
        {
            var summaryXmlDocument = MemberDocumentationManager.GetXmlDocument(assembly);

            if (summaryXmlDocument == null)
            {
                return(null);
            }

            var memoryStream = new MemoryStream();

            summaryXmlDocument.Save(memoryStream);
            memoryStream.Position = 0;

            var serializer = new XmlSerializer(typeof(SummaryDocument));

            return((SummaryDocument)serializer.Deserialize(memoryStream));
        }