次のコードを使用して要素の数を検索し、検索はデフォルト パスがない場合にのみ成功します。
検索するコード:
XElement root = XElement.Load(@"c:\b.txt", LoadOptions.PreserveWhitespace);
IEnumerable<XElement> address =
from el in root.Elements("Address")
select el;
int c = address.Count();
c の値は 2 で、次のデータがあります。
<?xml version="1.0" encoding="UTF-8"?>
<presence xmlns:a="urn:ietf:params:xml:ns:pidf"
xmlns:dm="urn:ietf:params:xml:ns:pidf:data-model"
xmlns:oma="urn:xml:prs:pidf:oma-pres"
entity="sip:john@police.city.gov">
<Address Type="Shipping">
<Name>Ellen Adams</Name>
<Street>123 Maple Street</Street>
<City>Mill Valley</City>
<State>CA</State>
<Zip>10999</Zip>
<Country>USA</Country>
</Address>
<Address Type="Billing">
<Name>Tai Yee</Name>
<Street>8 Oak Avenue</Street>
<City>Old Town</City>
<State>PA</State>
<Zip>95819</Zip>
<Country>USA</Country>
</Address>
</presence>
しかし、2 行目を次のように交換して XML を変更すると (xmlns:a ではなく xmlns):
<presence xmlns="urn:ietf:params:xml:ns:pidf"
値 0 を取得しましたが、これは正しくありません。
なにか提案を?
ありがとう