title: Set new XML attribute value C#
body: <p>I'm trying to update an attribute value from the XML file I've created this way : </p>
  
  <pre><code>    [Serializable]
      public class Song
      {
          public string artist { get; set; }
          public string tittle { get; set; }
      }
  
      // Main class
      private void bt_save_Click(object sender, EventArgs e)
      {
          Song s = new Song("Chopin", "Nocturne B minor");
          SaveParametresXml(ref s);
      }
  
      public void SaveParametresXml(ref Song s)
      {
          XmlSerializer serializer = new XmlSerializer(typeof(Song));
          StreamWriter xml = new StreamWriter(@"D:\Tests\mysong.xml", false);
          serializer.Serialize(xml, s);
          xml.Close();
      }
  </code></pre>
  
  <p>Which is working perfectly, I got the following result on my XML file : </p>
  
  <pre><code>    &lt;?xml version="1.0" encoding="utf-8"?&gt;
      &lt;Song xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"&gt;
        &lt;artist&gt;Chopin&lt;/artist&gt;
        &lt;tittle&gt;Nocturne B minor&lt;/tittle&gt;
      &lt;/Song&gt;
  </code></pre>
  
  <p>The problem is that I don't manage to do value modification.
  Is there anyone to help me dealing with my XML's problems? I've already tried to <code>Deserialize</code> but I do not really get how should I use it?</p>
  
  <pre><code>        public Song LoadXml(string path)
          {
              Song s = new Song();
              XmlSerializer xs = new XmlSerializer(typeof(Song));   
              StreamReader xml = new StreamReader(path);     
              s = (Song)xs.Deserialize(xml);                         
              xml.Close();                                          
              return s;                                           
          }
  </code></pre>