title: linq xml extract text between tags
body: <p>I'm using Linq query to extract data from Xml file. I'm trying to extract data from tags and extra data, i.e. text, preserving the order. 
  In other words giving the following xml excerpt: </p>
  
  <pre><code>&lt;item&gt;
   &lt;elementA id="1" value="aaaa"&gt;zazaz
   &lt;elementB id="2" value="bbbb"&gt;wwwww
   &lt;elementC id="3" value="cccc"&gt;sssss
  &lt;/item&gt;
  </code></pre>
  
  <p>And I'm using the following statements to extract:</p>
  
  <pre><code>XElement root = XElement.Parse(@"
     &lt;item&gt;
           &lt;elementA id="1" value="aaaa"/&gt;zazaz
           &lt;elementB id="2" value="bbbb"/&gt;wwwww
           &lt;elementC id="3" value="cccc"/&gt;sssss
     &lt;/item&gt;");
  var nav = root.Descendants();
  StringBuilder content=new StringBuilder();
  foreach (var x in nav)
  {
    content.Append(x.Name.LocalName)
         .Append(": id=")
         .Append(x.Attribute("id").Value)
         .Append(": value=")
         .Append(x.Attribute("value").Value)
         .Append(" extra data= ")
         .Append(x.Value)
         .Append("\n");
   }
   Console.WriteLine(content.ToString());
  </code></pre>
  
  <p>and it extracts:</p>
  
  <pre><code>elementA: id=1: value=aaaa extra data: 
  elementB: id=2: value=bbbb extra data: 
  elementC: id=3: value=cccc extra data: 
  </code></pre>
  
  <p>instead of:</p>
  
  <pre><code>elementA: id=1: value=aaaa extra data: zazaz
  elementB: id=2: value=bbbb extra data: wwwww
  elementC: id=3: value=cccc extra data: sssss
  </code></pre>
  
  <p>So, with ".Value" the text between tags is not extracted.
  Are there any tricks to perform it? </p>