title: NullReferenceException while using XElement
body: <p>I have a method that is suppose to edit a xml file:</p>
  
  <pre><code>    public void EditItem(Item item, string xml)
      {
          Data = XDocument.Load(HttpContext.Current.Server.MapPath("~/App_Data/Items/" + xml + ".xml"));
  
          XElement node = Data.Root.Elements("item").Where(i =&gt; (string)i.Element("ID") == item.ID).FirstOrDefault();
  
          node.SetElementValue("ID", item.ID);
          node.SetElementValue("Name", item.Name);
          node.SetElementValue("Type", item.Type);
          node.SetElementValue("Kr", item.Kr);
          node.SetElementValue("Euro", item.Euro);
  
          Data.Save(HttpContext.Current.Server.MapPath("~/App_Data/Tables/" + xml + ".xml"));
      }
  </code></pre>
  
  <p>I get this validation error thru a try/catch in my controller: "Object reference not set to an instance of an object." Through some debugging, I found that "node" is null, even though "Data" contains all the right data from the xml, and the model.ID is correct.</p>
  
  <p>the wierd thing is, that I have it working in another repo where the xml isnt dynamic, and the XDocument obj is loaded in the constructor.</p>
  
  <p>Any ideas what causes it? Or maybe some ideas on a workaround.</p>
  
  <p>Update. Xml snippet:</p>
  
  <pre><code>&lt;?xml version="1.0" encoding="utf-8"?&gt;
      &lt;catagory id="0"&gt;
        &lt;module&gt;
          &lt;item&gt;
            &lt;ID&gt;101&lt;/ID&gt;
            &lt;Name&gt;ClassicoTable(35x100x100)&lt;/Name&gt;
            &lt;Type&gt;Model&lt;/Type&gt;
            &lt;Kr&gt;0&lt;/Kr&gt;
            &lt;Euro&gt;0&lt;/Euro&gt;
            &lt;DataType&gt;ClassicoTableA&lt;/DataType&gt;
          &lt;/item&gt;
          &lt;item&gt;
            &lt;ID&gt;100&lt;/ID&gt;
            &lt;Name&gt;ClassicoTable(102x100x140)&lt;/Name&gt;
            &lt;Type&gt;Model&lt;/Type&gt;
            &lt;Kr&gt;0&lt;/Kr&gt;
            &lt;Euro&gt;0&lt;/Euro&gt;
            &lt;DataType&gt;ClassicoTableB&lt;/DataType&gt;
          &lt;/item&gt; 
  
  
  
         ......
  
        &lt;/module&gt;
      &lt;/catagory id="0"&gt;
  </code></pre>