abdul subhan mohammed Ответов: 1

Десериализация XML-файла-ошибка в XML-документе (1, 2)?


Привет Ребята,

Я пытаюсь десериализовать XML, однако получаю это исключение:

В XML-документе есть ошибка (1,2).

Сообщение InnerException
Исключение типа "система".InvalidOperationException ' произошло в System.Xml.dll но не был обработан в пользовательском коде...

Что я уже пробовал:

Я искал форум stackoverflow, google и реализовал этот совет, однако я все еще получаю ту же ошибку. Пожалуйста, найдите прилагаемое некоторое содержание xml-файла:

supplying XML as
<question xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
	<details>
		<text>
			<questiontext>Keyboard is an input or output device?
		
		<Option answer="true">
			<questionoption>input
		</Option>
		<Option answer="false">
			<questionoption>output
		</Option>
		<Option answer="false">
			<questionoption>both
		</Option>
		<Option answer="false">
			<questionoption>none
		</Option>
		<mediaurl>
			<url>~/Core/MediaFiles/Keyboard_27_02_38_19_27.JPG


XML.CS
using System;
using System.Xml.Serialization;
using TeTec.Business.Entities.Common;
using TeTec.Business.Entities.Model;
using TeTec.Utility.XML;

namespace TeTec.Business.Entities.Model.Question
{
    [XmlRoot(ElementName = "Question")]
    public class QuestionDetailsInfo : ICBO<int>
    {
        [XmlIgnore]
        public int ID { get; set; }

        [XmlIgnore]
        public long QuestionID { get; set; }

        [XmlIgnore]
        public int QuestionLanguageID { get; set; }

        private QuestionDetailsXMLInfo _questionDetailsXML = new QuestionDetailsXMLInfo();

        [XmlIgnore]
        public string DetailXml
        {
            get { return XMLSerializer.GetXML<questiondetailsxmlinfo>(_questionDetailsXML, true); }
            set { if (!string.IsNullOrEmpty(value)) _questionDetailsXML = XMLSerializer.GetObject<questiondetailsxmlinfo>(value); }
        }

        [XmlElement(ElementName = "Details")]
        public QuestionDetailsXMLInfo QuestionDetailsXML
        {
            get { return _questionDetailsXML; }
            set { _questionDetailsXML = value; }
        }

        [XmlIgnore]
        public bool? IsActive { get; set; }

        [XmlIgnore]
        public DateTime Updated { get; set; }
        
        [XmlIgnore]
        public int Identity => ID;
    }

	
}


любой желающий может мне помочь.

Спасибо

Dave Kreskowiak

Это не XML-файл. Она сильно деформирована.

Я предполагаю, что у вас есть закрывающий тег для корневого тега "вопрос" и для тегов "подробности" и "текст". У вас нет закрывающих тегов для любого из ваших "questionoption" или "questiontext" теги, ни то, что тег "ура".

1 Ответов

Рейтинг:
0

Patrice T

Ваш файл не является XML-файлом.

<text>
    <questiontext>Keyboard is an input or output device?</questiontext>
</text>
<Option answer="true">
    <questionoption>input</questionoption>
</Option>
<Option answer="false">
    <questionoption>output</questionoption>
</Option>
<Option answer="false">
    <questionoption>both</questionoption>
</Option>
<Option answer="false">
    <questionoption>none</questionoption>
</Option>

Просто часть исправлений, чтобы сделать ваш файл XML.


abdul subhan mohammed

я добавил xml-класс, не могли бы вы проверить plz.