开发者

Invalid Assembly XML File

开发者 https://www.devze.com 2023-01-20 16:10 出处:网络
I am trying to read the XML Documentation file (C#) using this ocde - Type classType = typeof(Point);

I am trying to read the XML Documentation file (C#) using this ocde -

Type classType = typeof(Point);

        string documentationFileLocation = classType.Assembly.CodeBase;
        if ( !string.IsNullOrEmpty(documentationFileLocation) && documentationFileLocation.StartsWith("file:///") )
        {
            documentationFileLocation = documentationFileLocation.Replace(".exe",".xml");
            documentationFileLocation = documentationFileLocation.Replace("file:///","");
            if(File.Exists(documentationFileLocation))
            {

                XElement document = XElement.Load(documentationFileLocation);
                // Some Code Logic Here using LINQ
            }
            else
            {
                Console.WriteLine("Please Go to Project Properties->Build and check 'XML Documentation file'");

I have a LINQ Query after XElement document = XElement.Load(sr) which dosen`t work,

So I put a breakpoint in the LINQ Query and I am getting this error -

XmlException - D开发者_如何转开发ata at the root level is invalid. Line 1, position 1.

How I can fix it?

Edit:Changed the code a little - just deleted StreamReader


Well, it sounds like it simply isn't a valid XML file.

If you print out the result of sr.ReadToEnd() instead of calling XElement.Load, what does it look like? If you try to load the file into an XML editor, what happens?

Btw, it's better to use a using statement than calling Dispose explicitly: with your current code, the StreamReader isn't disposed if Load throws an exception.

Finally, is there any reason you're not just using XElement.Load(documentationFileLocation)?


Have you tried XDocument.Load() instead of using XElement? If the file begins with an XML declaration <?xml ..., you might get this error when trying to load an element from it.

Edit: the file you pasted on pastebin has no encoding specified. Can you try to open this file in notepad and re-save it as ANSI, the see if it loads? Just to make sure that we don't have an encoding or BOM problem.

0

精彩评论

暂无评论...
验证码 换一张
取 消