У меня есть xml вот так:
<LookupResults>
<LookupResult>
<NumberOfMatches>1</NumberOfMatches>
<MaxScore>90</MaxScore>
<Entries>
<Entry>
<Uid>10400</Uid>
<EntityScore />
<EntityMaxScore>90</EntityMaxScore>
<FirstName>Jose Epinemio</FirstName>
<LastName>MOLINA GONZALEZ</LastName>
<SdnType>Individual</SdnType>
<ProgramName>SDNTK</ProgramName>
<Citizenships>
<Citizenship>
<Uid>5614</Uid>
<Country>Colombia</Country>
</Citizenship>
</Citizenships>
<Nationalities>
<Nationality>
<Uid>5616</Uid>
<Country>Colombia</Country>
</Nationality>
</Nationalities>
<SDNIds>
<SDNId>
<Uid>5082</Uid>
<IdType>Cedula No.</IdType>
<Number>T.I. 57111-01681</Number>
<Country>Colombia</Country>
</SDNId>
</SDNIds>
<DateOfBirths>
<DateOfBirth>
<Uid>5615</Uid>
<Dob>18 Nov 1957</Dob>
<IsMainEntry>true</IsMainEntry>
</DateOfBirth>
</DateOfBirths>
<AKAs>
<AKA>
<Uid>10209</Uid>
<Type>a.k.a.</Type>
<Category>weak</Category>
<LastName>DANILO GARCIA</LastName>
</AKA>
<AKA>
<Uid>10210</Uid>
<Type>a.k.a.</Type>
<Category>strong</Category>
<FirstName>Jose Epimenio</FirstName>
<LastName>MOLINA GONZALEZ</LastName>
</AKA>
</AKAs>
<Addresses />
</Entry>
</Entries>
<SourceList>
<Threshold>85</Threshold>
<PublishDate>2019-03-26T00:00:00</PublishDate>
<DateUploaded>2019-03-31T20:56:33.037</DateUploaded>
<RecordCount>7527</RecordCount>
<SourceListName>OFAC</SourceListName>
</SourceList>
</LookupResult>
</LookupResults>
и созданные классы вот так:
[XmlRoot(ElementName = "Citizenship")]
public class Citizenship
{
[XmlElement(ElementName = "Uid")]
public string Uid { get; set; }
[XmlElement(ElementName = "Country")]
public string Country { get; set; }
}
[XmlRoot(ElementName = "Nationality")]
public class Nationality
{
[XmlElement(ElementName = "Uid")]
public string Uid { get; set; }
[XmlElement(ElementName = "Country")]
public string Country { get; set; }
}
[XmlRoot(ElementName = "SDNId")]
public class SDNId
{
[XmlElement(ElementName = "Uid")]
public string Uid { get; set; }
[XmlElement(ElementName = "IdType")]
public string IdType { get; set; }
[XmlElement(ElementName = "Number")]
public string Number { get; set; }
[XmlElement(ElementName = "Country")]
public string Country { get; set; }
}
[XmlRoot(ElementName = "SDNIds")]
public class SDNIds
{
[XmlElement(ElementName = "SDNId")]
public SDNId SDNId { get; set; }
}
[XmlRoot(ElementName = "DateOfBirth")]
public class DateOfBirth
{
[XmlElement(ElementName = "Uid")]
public string Uid { get; set; }
[XmlElement(ElementName = "Dob")]
public string Dob { get; set; }
[XmlElement(ElementName = "IsMainEntry")]
public string IsMainEntry { get; set; }
}
[XmlRoot(ElementName = "AKA")]
public class AKA
{
[XmlElement(ElementName = "Uid")]
public string Uid { get; set; }
[XmlElement(ElementName = "Type")]
public string Type { get; set; }
[XmlElement(ElementName = "Category")]
public string Category { get; set; }
[XmlElement(ElementName = "LastName")]
public string LastName { get; set; }
[XmlElement(ElementName = "FirstName")]
public string FirstName { get; set; }
}
[XmlRoot(ElementName = "Entry")]
public class Entry
{
[XmlElement(ElementName = "Uid")]
public string Uid { get; set; }
[XmlElement(ElementName = "EntityScore")]
public string EntityScore { get; set; }
[XmlElement(ElementName = "EntityMaxScore")]
public string EntityMaxScore { get; set; }
[XmlElement(ElementName = "FirstName")]
public string FirstName { get; set; }
[XmlElement(ElementName = "LastName")]
public string LastName { get; set; }
[XmlElement(ElementName = "SdnType")]
public string SdnType { get; set; }
[XmlElement(ElementName = "ProgramName")]
public string ProgramName { get; set; }
[XmlElement(ElementName = "Citizenships")]
public List<Citizenship> Citizenships { get; set; }
[XmlElement(ElementName = "Nationalities")]
public List<Nationality> Nationalities { get; set; }
[XmlElement(ElementName = "SDNIds")]
public List<SDNId> SDNIds { get; set; }
[XmlElement(ElementName = "DateOfBirths")]
public List<DateOfBirth> DateOfBirths { get; set; }
[XmlElement(ElementName = "AKAs")]
public List<AKA> AKAs { get; set; }
[XmlElement(ElementName = "Addresses")]
public string Addresses { get; set; }
}
[XmlRoot(ElementName = "SourceList")]
public class SourceList
{
[XmlElement(ElementName = "Threshold")]
public string Threshold { get; set; }
[XmlElement(ElementName = "PublishDate")]
public string PublishDate { get; set; }
[XmlElement(ElementName = "DateUploaded")]
public string DateUploaded { get; set; }
[XmlElement(ElementName = "RecordCount")]
public string RecordCount { get; set; }
[XmlElement(ElementName = "SourceListName")]
public string SourceListName { get; set; }
}
[XmlRoot(ElementName = "LookupResult")]
public class LookupResult
{
[XmlElement(ElementName = "NumberOfMatches")]
public string NumberOfMatches { get; set; }
[XmlElement(ElementName = "MaxScore")]
public string MaxScore { get; set; }
[XmlElement(ElementName = "Entries")]
public List<Entry> Entry { get; set; }
[XmlElement(ElementName = "SourceList")]
public SourceList SourceList { get; set; }
public LookupResult()
{
Entry = new List<Entry>();
}
}
public class LookupResultsData
{
[XmlElement(ElementName = "LookupResult")]
public List<LookupResult> LookupResults { get; set; }
public LookupResultsData()
{
LookupResults = new List<LookupResult>();
}
}
Теперь десериализуем список следующим образом:
var xml = File.ReadAllText(@"C:\11_07.xml");
var serializer = new XmlSerializer(typeof(LookupResultsData), new XmlRootAttribute("LookupResults"));
using (var stringReader = new StringReader(xml))
using (var reader = XmlReader.Create(stringReader))
{
var result = (LookupResultsData)serializer.Deserialize(reader);
//Console.WriteLine(result);
}
Однако столбец записей пуст. пожалуйста помогите