XmlCommentMarkDownGenerator
XmlCommentMarkDownGenerator copied to clipboard
Exception thrown when Xml String contains XML
I added XmlCommentMarkdownGenerator to my project from NuGet, and ran a compile. The output was:
1>Unhandled Exception: System.Xml.XmlException: Unknown element type "input" ---> System.Collections.Generic.KeyNotFoundException: The given key was not present in the dictionary.
1> at System.Collections.Generic.Dictionary`2.get_Item(TKey key)
1> at PxtlCa.XmlCommentMarkDownGenerator.XmlToMarkdown.ToMarkDown(XNode node, String assemblyName)
1> --- End of inner exception stack trace ---
1> at PxtlCa.XmlCommentMarkDownGenerator.XmlToMarkdown.ToMarkDown(XNode node, String assemblyName)
1> at PxtlCa.XmlCommentMarkDownGenerator.XmlToMarkdown.<>c__DisplayClass7_0.<ToMarkDown>b__0(String current, XNode x)
1> at System.Linq.Enumerable.Aggregate[TSource,TAccumulate](IEnumerable`1 source, TAccumulate seed, Func`3 func)
1> at PxtlCa.XmlCommentMarkDownGenerator.XmlToMarkdown.ToMarkDown(IEnumerable`1 es, String assemblyName)
1> at PxtlCa.XmlCommentMarkDownGenerator.TagRenderer.<>c.<.cctor>b__8_6(XElement x, String assemblyName)
1> at PxtlCa.XmlCommentMarkDownGenerator.XmlToMarkdown.ToMarkDown(XNode node, String assemblyName)
1> at PxtlCa.XmlCommentMarkDownGenerator.XmlToMarkdown.<>c__DisplayClass7_0.<ToMarkDown>b__0(String current, XNode x)
1> at System.Linq.Enumerable.Aggregate[TSource,TAccumulate](IEnumerable`1 source, TAccumulate seed, Func`3 func)
1> at PxtlCa.XmlCommentMarkDownGenerator.XmlToMarkdown.ToMarkDown(IEnumerable`1 es, String assemblyName)
1> at PxtlCa.XmlCommentMarkDownGenerator.XmlToMarkdown.ExtractNameAndBodyFromMember(XElement node, String assemblyName)
1> at PxtlCa.XmlCommentMarkDownGenerator.TagRenderer.<>c.<.cctor>b__8_1(XElement x, String assemblyName)
1> at PxtlCa.XmlCommentMarkDownGenerator.XmlToMarkdown.ToMarkDown(XNode node, String assemblyName)
1> at PxtlCa.XmlCommentMarkDownGenerator.XmlToMarkdown.<>c__DisplayClass7_0.<ToMarkDown>b__0(String current, XNode x)
1> at System.Linq.Enumerable.Aggregate[TSource,TAccumulate](IEnumerable`1 source, TAccumulate seed, Func`3 func)
1> at PxtlCa.XmlCommentMarkDownGenerator.XmlToMarkdown.ToMarkDown(IEnumerable`1 es, String assemblyName)
1> at PxtlCa.XmlCommentMarkDownGenerator.TagRenderer.<>c.<.cctor>b__8_0(XElement x, String assemblyName)
1> at PxtlCa.XmlCommentMarkDownGenerator.XmlToMarkdown.ToMarkDown(XNode node, String assemblyName)
1> at PxtlCa.XmlCommentMarkDownGenerator.Program.Main(String[] args)
1>C:\Users\Nikki\.nuget\packages\pxtlca.xmlcommentmarkdowngenerator\0.2.6270.2853\build\PxtlCa.XmlCommentMarkDownGenerator.targets(10,5): error MSB3073: The command ""C:\Users\Nikki\.nuget\packages\pxtlca.xmlcommentmarkdowngenerator\0.2.6270.2853\build\\..\Tools\PxtlCa.XmlCommentMarkDownGenerator.exe" -i "C:\Dev\CodeFirstWebFramework\bin\Debug\net45\\CodeFirstWebFramework.xml" -o "C:\Dev\CodeFirstWebFramework\..\Docs\CodeFirstWebFramework.GeneratedXmlDoc.md"" exited with code 255.
Further to this, it was caused because I inadvertently used some xml inside one of my comments:
/// <summary>
/// Class to hold details of an uploaded file (from an <input type="file" />)
/// </summary>
Perhaps you should treat unrecognised xml inside comments as plain text?
Good find. I'll see if I can fix this. If I don't get to it, patches are welcome.