2010-02-05 1 views
0

У меня есть веб-служба, которая возвращает строку, представляющую Xml-файл. Строка правильно сформирована xml. Мне нужно создать объект FileInfo из строки, чтобы я мог десериализовать его.Преобразование XmlDocument в FileInfo

У меня нет пути к файлу или даже если я делаю это бесполезным, так как это отключенный сервер.

можно преобразовать строку в XmlDocument от -

XmlDocument doc = new XmlDocument(); 
doc.LoadXml(MyString); 

Как получить FileInfo, так что я могу десериализации его? Пожалуйста помоги.


Решение:

Спасибо за ваши ответы. Я создал XmlReader из строки, возвращаемой службой, и использовал XmlSerializer.Deserialize, чтобы получить необходимый мне объект.

using (XmlReader tr = XmlReader.Create(new StringReader(mystring))) 
{ 
    XmlSerializer serializer = new XmlSerializer(typeof(<T>), extraTypes); 
    <T> serizalizedForm = serializer.Deserialize(tr) as <T>; 
} 
+0

Добавлен тег C#. Если это не имеет значения, скажите об этом в комментариях. – 2010-02-05 02:07:18

+2

Я действительно не уверен, где 'FileInfo' становится актуальным в этом ...? –

+0

Марк, ты был прав. Мне не нужна FileInfo. Я обновил сообщение с помощью решения. Спасибо – Dave

ответ

0

Вам нужен класс, представляющий структуру xml для десериализации. используя xsd.exe и экземпляр возвращаемого xml, вы можете создать этот класс (/ c-переключатель), а затем использовать xmlserializer для десериализации. Here is an example of a method that deserializes the xml.

+0

Джейсон, связанный помог мне. Благодарю. – Dave