Если у вас есть данные в формате, как это:
<Person>
<Id>1</Id>
<FirstName>John</FirstName>
<LastName>Smith</LastName>
</Person>
Тогда это C# код будет desrialise в экземпляр Person
//assuming you have a string called "data" that contains the above XML.
XDocument xd=XDocument.Parse(data); //needs System.Xml.Linq for XDocument type.
using(var reader = xd.CreateReader())
{
using(XmlSerializer ser = new XmlSerializer(typeof(Person))
{
Person p = ser.Deserialize(reader) as Person;
//p will be null if it didn't work, so make sure to check it!
}
}
Обратите внимание, что десериализатор чувствителен к регистру, так что вам нужно чтобы убедиться, что случаи элементов соответствуют оболочке свойств вашего класса (вы можете получить это, украсив ваши свойства с помощью атрибутов Serializer, которые сообщают серийнику о том, как их сопоставить here)
Простой родной сериализатор отлично подходит для простых объектов, таких как этот, но может направить вас на некоторые типы данных, такие как char, bool и т. Д., Так что проверьте, что ссылка на атрибуты.
Если вы хотите сделать это из формата, который вы задали в вопросе, вам нужно будет написать собственный сериализатор, в вашем случае мой совет будет состоять в том, чтобы читать из вашего файла и генерировать XML из данных, используя XDocument Надежда что помогает.
Считаете ли вы использование более стандартного формата обмена данными, такого как JSON, SEN или XML? –