我有一个文件siteconfig.xml
<?xml version="1.0" encoding="utf-8"?>
<siteconfig>
<paramenter>
<sitename>XXX网站</sitename>
</paramenter>
</siteconfig>
然后我在parameters_set.aspx里要读取这个XML文件
ASPX文件<table width="99%" border="0" align="center" cellpadding="0" cellspacing="0">
<tr>
<td class="title"><table border="0" cellspacing="0" cellpadding="0">
<tr>
<td width="13"><img src="img/ioc.gif" width="9" height="9" /></td>
<td>系统参数设置</td>
</tr>
</table></td>
</tr>
<tr>
<td valign="top" class="tdborder">
<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
<asp:Button ID="Button1" runat="server" onclick="Button1_Click" Text="Button" />
</td>
</tr>
</table>
CS代码using System;
using System.Collections.Generic;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Xml;
using System.Text;
using System.Data;
using System.Data.SqlClient;
public partial class _manages_parameters_set : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{XmlDocument xmlDoc = new XmlDocument();
xmlDoc.Load(Server.MapPath("xml/siteconfig.xml"));
XmlNode xnserver = xmlDoc.SelectSingleNode("siteconfig/paramenter");
this.TextBox1.Text = xnserver["sitename"].InnerText;
} protected void Button1_Click(object sender, EventArgs e)
{
XmlTextWriter xmlWriter;
string strFilename = Server.MapPath("xml/siteconfig.xml");
xmlWriter = new XmlTextWriter(strFilename, Encoding.UTF8);//创建一个xml文档
xmlWriter.Formatting = Formatting.Indented;
xmlWriter.WriteStartDocument();
xmlWriter.WriteStartElement("siteconfig");
xmlWriter.WriteStartElement("paramenter");
xmlWriter.WriteStartElement("sitename");
xmlWriter.WriteString(this.TextBox1.Text);
xmlWriter.WriteEndElement();
xmlWriter.Close();
// this.TextBox1.Text = ReadXml(fileName);
} }这样可以读出来,但通过this.TextBox1.Text更新不了数据
<?xml version="1.0" encoding="utf-8"?>
<siteconfig>
<paramenter>
<sitename>XXX网站</sitename>
</paramenter>
</siteconfig>
然后我在parameters_set.aspx里要读取这个XML文件
ASPX文件<table width="99%" border="0" align="center" cellpadding="0" cellspacing="0">
<tr>
<td class="title"><table border="0" cellspacing="0" cellpadding="0">
<tr>
<td width="13"><img src="img/ioc.gif" width="9" height="9" /></td>
<td>系统参数设置</td>
</tr>
</table></td>
</tr>
<tr>
<td valign="top" class="tdborder">
<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
<asp:Button ID="Button1" runat="server" onclick="Button1_Click" Text="Button" />
</td>
</tr>
</table>
CS代码using System;
using System.Collections.Generic;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Xml;
using System.Text;
using System.Data;
using System.Data.SqlClient;
public partial class _manages_parameters_set : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{XmlDocument xmlDoc = new XmlDocument();
xmlDoc.Load(Server.MapPath("xml/siteconfig.xml"));
XmlNode xnserver = xmlDoc.SelectSingleNode("siteconfig/paramenter");
this.TextBox1.Text = xnserver["sitename"].InnerText;
} protected void Button1_Click(object sender, EventArgs e)
{
XmlTextWriter xmlWriter;
string strFilename = Server.MapPath("xml/siteconfig.xml");
xmlWriter = new XmlTextWriter(strFilename, Encoding.UTF8);//创建一个xml文档
xmlWriter.Formatting = Formatting.Indented;
xmlWriter.WriteStartDocument();
xmlWriter.WriteStartElement("siteconfig");
xmlWriter.WriteStartElement("paramenter");
xmlWriter.WriteStartElement("sitename");
xmlWriter.WriteString(this.TextBox1.Text);
xmlWriter.WriteEndElement();
xmlWriter.Close();
// this.TextBox1.Text = ReadXml(fileName);
} }这样可以读出来,但通过this.TextBox1.Text更新不了数据
这样子吗?也不对啊,之前的可以保存,就是获取不到this.TextBox1.Text的值,更新不了数据
XmlDocument xmlDoc = new XmlDocument();
xmlDoc.Load(Server.MapPath("xml/siteconfig.xml"));
XmlNode xnserver = xmlDoc.SelectSingleNode("siteconfig/paramenter");
this.TextBox1.Text = xnserver["sitename"].InnerText;
这块是读, XmlTextWriter xmlWriter;
string strFilename = Server.MapPath("xml/siteconfig.xml");
xmlWriter = new XmlTextWriter(strFilename, Encoding.UTF8);//创建一个xml文档
xmlWriter.Formatting = Formatting.Indented;
xmlWriter.WriteStartDocument();
xmlWriter.WriteStartElement("siteconfig");
xmlWriter.WriteStartElement("paramenter");
xmlWriter.WriteStartElement("sitename");
xmlWriter.WriteString(this.TextBox1.Text);
xmlWriter.WriteEndElement();
xmlWriter.Close();
这块是写,对不?
{XmlDocument xmlDoc = new XmlDocument();
xmlDoc.Load(Server.MapPath("xml/siteconfig.xml"));
XmlNode xnserver = xmlDoc.SelectSingleNode("siteconfig/paramenter");
this.TextBox1.Text = xnserver["sitename"].InnerText;
}
这里this.TextBox1.Text = xnserver["sitename"].InnerText;要写在
if(!isPostBack)
{
}
里面否则你每次点按纽postback的时候textbox1的值又恢复到xml读取的值那你每次当然都不更新的