我正在使用基于特定节点的信息填充文本框ConfirmNum
。然后,当所有信息都更新时,我将信息(通过提交按钮)保存回特定节点。
但是,在保存后,XML 文件中的每个空节点都会下降到另一行。
保存前的示例 XML:
<OnlineBanking>
<Transactions>
<Txn>
<Login></Login>
<UserName>userName</UserName>
<CustomerName>CustomerName</CustomerName>
<ConfirmNum>1234</ConfirmNum>
</Txn>
</Transactions>
</OnlineBanking>
我的代码(如下)将根据数字保存该节点的信息Page.aspx?CID=1234
。但是,整个 XML 文件中的每个空白节点现在都将有一个换行符。不仅仅是Txn
我们刚刚编辑的,而是所有的。
这是我的代码:
protected void btnSubmit_Click(object sender, EventArgs e)
{
XmlDocument item = new XmlDocument();
item.Load(xmlFileName);
if (CID != "")
{
XmlNode xlist = item.SelectSingleNode("OnlineBanking/Transactions/Txn[ConfirmNum=" + CID + "]");
if (xlist != null)
{
xlist.ChildNodes.Item(0).InnerText = tbLogin.Text;
xlist.ChildNodes.Item(1).InnerText = tbUserName.Text;
xlist.ChildNodes.Item(2).InnerText = tbCustomerName.Text;
item.Save(xmlFileName);
}
}
}
保存后的示例 XML:
<OnlineBanking>
<Transactions>
<Txn>
<Login>
</Login>
<UserName>userName</UserName>
<CustomerName>CustomerName</CustomerName>
<ConfirmNum>1234</ConfirmNum>
</Txn>
</Transactions>
</OnlineBanking>
请注意<login>
是如何在另一行而不是</login>
. 这就是我所说的。希望有人能清楚地看到我没有做什么。