0

XDocument を使用して単純な xml ファイルを更新しようとしています。ここに私の単純なxmlファイルがあります

<?xml version="1.0" encoding="utf-8" ?>
<message>Test test test test</message>

上記のxmlです。

ユーザーが Button1 をクリックすると、xml が読み込まれ、画面に表示されます。しかし、Button2 をクリックしても、xml は更新されません。

public partial class www_html_test : System.Web.UI.Page
{
XDocument doc;
XElement elem;

protected void Page_Load(object sender, EventArgs e)
{
    doc = XDocument.Load(Server.MapPath("xml/test.xml"));
    elem = doc.Element("message");
}
protected void Button1_Click(object sender, EventArgs e)
{
    try{

        Label1.Text = elem.Value.ToString();
    } catch(Exception ex){
        Label1.Text = ex.Message;
    }
}
protected void Button2_Click(object sender, EventArgs e)
{
    try{
        elem.Value = "test 2 test 2 test 2";
    }
    catch (Exception ex)
    {
        Label1.Text = ex.Message;
    }
}
}

xml を更新するにはどうすればよいですか?

4

2 に答える 2

1

に電話する必要がありますdoc.Save(Server.MapPath("xml/test.xml"))

値を変更した時点ではelem、それはメモリ内にのみ存在します。ディスクにコミットするには、保存する必要があります。

于 2013-06-18T16:55:24.043 に答える
1

ボタン 2 のクリック イベント ハンドラを次のように変更します。

    protected void Button2_Click(object sender, EventArgs e)
    {
        try{
            elem.Value = "test 2 test 2 test 2";
            doc.Save(Server.MapPath("xml/test.xml"));
        }
        catch (Exception ex)
        {
            Label1.Text = ex.Message;
        }
     }
于 2013-06-18T16:58:55.803 に答える