textbox内容无法保存到xml中,求助!
页面上只有一个textbox,id设为tbContent,另外有一个保存按钮,id设为btnSave。程序就是将textbox里面的内容保存到xml根节点root下的子节点sysinfo(某个传递过来的type值)下的content里面。
没弄明白哪里不对,直接写node["content"].InnerText=tbContent.text保存不上,将tbContent.text传给一个String,然后再赋值给node["content"].InnerText也不行。
但是,直接写node["content"].InnerText="adsfadfadf",这样就能保存上内容。
第一次弄xml,请指教。
<?xml version="1.0" encoding="utf-8"?><root> <sysinfo type="empcards"> <content>sdf</content> </sysinfo> <sysinfo type="rules"> <content>1234</content> </sysinfo></root>
//保存按钮 protected void btnSave_Click(object sender, EventArgs e) { XmlDocument xmlDoc = new XmlDocument(); xmlDoc.Load(Server.MapPath("Sysinfo.xml")); XmlNode node = xmlDoc.SelectSingleNode("root/sysinfo[@type='" + strNode + "']"); string strContent = ""; if (tbContent.Text.Length == 0) { lblError.Text = "内容不能为空"; return; } strContent = tbContent.Text.ToString(); if (node != null) { node["content"].InnerText = strContent;//赋值 } xmlDoc.Save(Server.MapPath("Sysinfo.xml"));//保存 }
protected void btnSave_Click(object sender, EventArgs e) { XmlDocument xmlDoc = new XmlDocument(); xmlDoc.Load(Server.MapPath("XMLFile1.xml")); XmlNode node = xmlDoc.SelectSingleNode("root/sysinfo[@type='rules']"); node.InnerText = this.tbContent.Text; xmlDoc.Save(Server.MapPath("XMLFile1.xml")); }
[解决办法]
你贴出来的代码没有问题。
调试一下,看看tbContent.text的值是什么。
应该是tbContent.text有错误。