【发布时间】:2014-10-03 23:21:39
【问题描述】:
我有一个带有 1 个按钮和 4 个文本框的 ASP.NET WebForm。
每次页面加载时,都会执行以下从 XML 文件中读取数据并显示在文本框中的代码:
private void PutWhatWasBefore()
{
var xml = XDocument.Load(@"C:\Settings.xml");
From_display.Text = xml.Element("Settings").Element("Remember").Attribute("fromdisplay").Value.ToString();
From_Smtp.Text = xml.Element("Settings").Element("Remember").Attribute("fromsmtp").Value.ToString();
subject.Text = xml.Element("Settings").Element("Remember").Attribute("subject").Value.ToString();
}
这段代码运行良好,它将所有内容都放在了文本框中。但是,这是一个很大的问题,但是当我单击按钮时,以下写入 XML 文件的代码不起作用:
string tem = Template1.Text;
string from = From_Smtp.Text;
string dis = From_display.Text;
string sub = subject.Text;
var x = new XDocument(
new XElement("Settings",
new XElement("Remember",
new XAttribute("fromsmtp", from),
new XAttribute("subject", sub),
new XAttribute("fromdisplay", dis),
new XAttribute("template", tem)
)
)
);
x.Save(@"C:\Settings.xml");
无论我如何更改文本框中的数据,每次单击按钮时,数据都会恢复到之前的状态。
我在想它是一个回帖,这就是为什么会发生这种情况,但即使我用OnClientClick = return false; 禁用回帖,它仍然不起作用。
有什么想法吗?
编辑(12:06):
我想我没有说问题出在哪里,我想更深入一点。
当我点击按钮时,首先执行以下功能:
private void SaveNames()
{
try
{
string tem = Template1.Text;
string from = From_Smtp.Text;
string dis = From_display.Text;
string sub = subject.Text;
var x = new XDocument(
new XElement("Settings",
new XElement("Remember",
new XAttribute("fromsmtp", "He2"),
new XAttribute("subject", sub),
new XAttribute("fromdisplay", dis),
new XAttribute("template", tem)
)
)
);
x.Save(@"C:\Program Files (x86)\ActivePath\MailSenderWeb\Settings.xml");
}
catch (Exception ex)
{
AnswerAndError.Text = ex.Message;
}
}
那是不起作用的功能。它只是不会将新数据保存到 XML 文件中。
【问题讨论】:
-
+1 '这是一个很大的但是'
-
我使用 WinForms 尝试了您的代码,并且运行良好。你在使用 ASP.NET 吗?
-
是的,我是,asp.net。网络来源。