2016-06-30 5 views
0

Linq経由でXMLから値を取得する方法を知る良いリソースはどこですか?XMLスニペットでValueタグの値を取得するにはどうすればよいですか?

以下のXMLがWebサービスから返された場合、複数のSubscriberFieldTypeタグが存在する可能性があることを認識して、Valueタグの値を取得する方法を理解する必要があります。この例では、Nameタグの後にあるValueタグの値に "DisplayName"という値を設定するだけです。

{<GetSubscriberFieldsResult> 
    <Result>true</Result> 
    <ResultCode>0</ResultCode> 
    <Message /> 
    <Count>1</Count> 
    <SubscriberFields> 
    <SubscriberFieldType> 
     <Name>DisplayName</Name> 
     <Value>John Smith</Value> 
    </SubscriberFieldType> 
    </SubscriberFields> 
</GetSubscriberFieldsResult>} 

答えて

1

これがうまくいけば、これはそれを行うための良い方法はあり、

var result = dox.Descendants().Where(n => n.Name == "Value").FirstOrDefault(); 
0

は[OK]を、これが動作するように思われる値を返します。

var displayName = subscriberFieldsResultXML.Root.Elements("SubscriberFields") 
    .Descendants("SubscriberFieldType") 
    .Where(i => (string)i.Element("Name") == "DisplayName") 
    .Select(i => (string)i.Element("Value")) 
    .FirstOrDefault(); 
関連する問題