[英]Reading XMl Data same nodes in C#
我有以下XML數據。
<userAddress>
<addr>
<streetAddress/>
<streetAddress>some street</streetAddress>
<streetAddress>town</streetAddress>
<streetAddress>city</streetAddress>
<streetAddress>London</streetAddress>
<postCode>L45 1SG</postCode>
</addr>
</userAddress>
我正在嘗試讀取每條街道地址行,並將值存儲在帶有以下代碼的變量中。
XElement elem = XElement.Parse(xmldata);
var address = elem.Descendants("addr").ToList();
foreach (var adr in address)
{
current_user.address_1 = addr.Element("streetAddress").Value.ToString();
current_user.address_2 = addr.Element("streetAddress").Value.ToString();
current_patient.address_3 = addr.Element("streetAddress").Value.ToString();
current_patient.address_4 = addr.Element("streetAddress").Value.ToString();
current_patient.address_5 = addr.Element("streetAddress").Value.ToString();
current_patient.post_code = addr.Element("postCode").Value;
}
我上面的代碼面臨的問題是它正在將streetAddress的第一行值分配給所有變量address_1,address_2,address_3,address_4,address_5。
如果需要地址列表,則可以直接獲取元素。 然后,您必須根據自己的條件分配值
XElement elem = XElement.Parse(xmldata);
IEnumerable<XElement> addresses = elem.Descendants("streetAddress");
現在,您可以循環瀏覽並分配值。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.