XML ファイルに連絡先のリストがあります。
各連絡先にはいくつかのプロパティがありmdpr:connection
、その中にあります。
接続は別のオブジェクトです。
このリストを読んで、すべての連絡先を標準のプロパティを持つリストに取得しますが、この接続をオブジェクトにマップする方法.
<?xml version="1.0" encoding="UTF-8"?>
<mdpr:Data xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:mdpr="http://...">
<mdpr:contactList>
<mdpr:contact ID="{123456}" classID="Customer">
<mdpr:Name>data1</mdpr:Name>
<mdpr:TransportCode>data2</mdpr:TransportCode>
<mdpr:connection connectionIndex="0" fromID="{12345}" toID="{123456}">
<mdpr:status>1-5</mdpr:status>
<mdpr:startDate>2012-03-13T10:23:00Z</mdpr:startDate>
<mdpr:endDate>2013-03-13T13:44:00Z</mdpr:endDate>
</mdpr:connection>
</mdpr:contact>
</mdpr:contactList>
...
Classes:
public class Contact
{
public string Name { get; set; }
public string TransportCode { get; set; }
public Connection Connection { get; set; }
public TransportPlan()
{
this.Connection = new Connection();
}
}
public class Connection
{
public string status{ get; set; }
public string startDate{ get; set; }
public string endDate { get; set; }
}
データを読み取るコード:
XNamespace mdpr = "http://...";
var contacts = from c in xdoc.Root.Element(mdpr + "contactList")
.Elements(mdpr + "contact")
select new Contact {
TransportCode = (string)c.Element(mdpr + "TransportCode"),
Name = (string)c.Element(mdpr + "Name")
};
問題は読み方mdpr:connection
です。