Xmlserializer. deserialize (); говорит: "есть ошибка в XML-документе (2, 2)"
Привет ребята,
Я пытаюсь десериализовать данные из xml-файла, а xml следует за xsd-файлом. Я также сгенерировал файл C#, содержащий классы из файла xsd.
Этот код работает отлично:
XmlReaderSettings settings = new XmlReaderSettings(); settings.ValidationType = ValidationType.Schema; settings.Schemas.Add(null, xsdfile); XmlReader reader = XmlReader.Create(xmlfile, settings); while(reader.Read()); // just to see if an exception occurs
Таким образом, это заставляет меня думать, что xml действителен в соответствии с xsd-файлом. (Более того, я точно знаю, что она действительна)
Но когда я заменю эту строку:
while(reader.Read());
С этой линией:
Dump dump = (Dump)serializer.Deserialize(reader);
Я получаю это неуправляемое исключение:
There is an error in XML document (2, 2). ---> System.InvalidOperationException: <Dump xmlns=''> wasn't expected
Но нет
<Dump xmlns=''>в моем xml только a
<Dump>.
Так что я немного растерялся.. Вы можете помочь?
Спасибо!
Что я уже пробовал:
Поиски но пока ничего не помогли :/