Ecrire dans un fichier xml existant en c#
bonjour ,
je vient de créer un forum de discussions en c# .
je veut qu'un membre puisse ajouter un sujet donc j'ai créer un page contenant un textbox et un bouton pour enregistrer le sujet dans un fixhier xml existant .
le problème que l'enregistrement ne marche pas et aucun noeud n'est ajouté au fichier
voici mon code
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37
|
protected void btn_save_Click(object sender, EventArgs e)
{
XmlDocument doc = new XmlDocument();
doc.Load(Server.MapPath("discussions.xml"));
XmlNodeList list = doc.GetElementsByTagName("message");
XmlElement message = doc.CreateElement("message");
XmlElement nom = doc.CreateElement("nom");
nom.InnerText = Session["inscrit"].ToString();
message.AppendChild(nom);
foreach (XmlNode n in list) {
if (n.ChildNodes[0].InnerText == Session["inscrit"].ToString()) {
XmlElement email = doc.CreateElement("email");
email.InnerText = n.ChildNodes[1].InnerText;
message.AppendChild(email);
}
}
XmlElement contenu = doc.CreateElement("contenu");
contenu.InnerText = TextBox1.Text;
message.AppendChild(contenu);
message.SetAttributeNode("date",DateTime.Now.ToString());
doc.DocumentElement.AppendChild(message);
doc.Save(Server.MapPath("discussions.xml"));
} |
fichier xml :
Code:
1 2 3 4 5 6 7 8 9 10
|
<messages><message date="10/12/2014"><nom>nom1</nom>
<email>nom1@dd1.ex1</email>
<contenu>bonjou1</contenu>
</message>
<message date="11/12/2014"><nom>nom2</nom>
<email>nom2@dd2.ex2</email>
<contenu>bonjou2</contenu>
</message>
</messages> |