Je suis en train de suivre ce code, mais je ne peux pas accéder aux données XML.Comment désérialiser XML en objet
Je voudrais désérialiser le XML suivante et classe d'objets en C#:
fichier XML est:
<EmployeeCollection>
<EmployeeDetail>
<Employee ID ="EMP-01">
<Name>ABC</Name>
<MobileNumber></MobileNumber>
<Age>20</Age>
<Gender>Male</Gender>
<MartialStatus>Single</MartialStatus>
<DOB>1997-01-12</DOB>
<Branch Name="XYZ">
<CountryCode>IND</CountryCode>
<EstablishmentDate>2013-01-15</EstablishmentDate>
</Branch>
</Employee>
<Employee ID ="EMP-02">
<Name>DEF</Name>
<MobileNumber>9685741236</MobileNumber>
<Age>19</Age>
<Gender>Male</Gender>
<MartialStatus>Single</MartialStatus>
<DOB>19998-12-21</DOB>
<Branch Name="PQR">
<CountryCode>US</CountryCode>
<EstablishmentDate>2011-01-23</EstablishmentDate>
</Branch>
</Employee>
</EmployeeDetail>
</EmployeeCollection>
Je cette:
public class Employee
{
[XmlAttribute("ID")]
public string ID { get; set; }
[XmlElement("Name")]
public string Name { get; set; }
[XmlElement("MobileNumber")]
public long MobileNumber { get; set; }
[XmlElement("Age")]
public int Age { get; set; }
[XmlElement("Gender")]
public string Gender { get; set; }
[XmlElement("MartialStatus")]
public string MartialStatus { get; set; }
[XmlElement("DOB")]
public DateTime DOB { get; set; }
[XmlArray("Branch")]
public BranchDetail[] Branch { get; set; }
}
public class BranchDetail
{
[XmlAttribute("Name")]
public string BranchName { get; set; }
[XmlElement("CountryCode")]
public string CountryCode { get; set; }
[XmlElement("EstablishmentDate")]
public DateTime EstablishmentDate { get; set; }
}
[XmlRoot("EmployeeDetail")]
public class EmployeeCollection
{
[XmlArray("Employee")]
public Employee[] Employee { get; set; }
}
Mon code est:
public class EmployeeSerializer
{
public void Deserialize()
{
EmployeeCollection Employees = null;
XmlSerializer serializer = new XmlSerializer(typeof(EmployeeCollection));
StreamReader reader = new StreamReader(employee.xml);
Employees = (EmployeeCollection)serializer.Deserialize(reader);
reader.Close();
}
}
Je souhaite stocker toutes les données xml dans Object.
J'ai essayé mais je ne peux pas accéder aux données xml.
Anil semble déjà avoir gotton loin –
@Roland Shaw ce ne fut pas le cas dans la première version de cette question. Il y a eu plusieurs modifications à la question, et cette réponse est un "comment" générique pour éviter de faire le mappage pour objecter manuellement. Pas une raison pour downvoting :( –
La version initiale de la question avait des classes balisées pour la sérialisation XML, et même alors, vous répondez ne répond pas * comment * sérialiser/désérialiser les données –