添加元素后,xml文件不会保存

时间:2014-12-17 20:24:56

标签: javascript html asp.net ajax xml

我正在尝试创建一个聊天系统,我希望每次用户编写按摩并按下按钮后,计算机都会向xml文件中添加一个新元素。我已经成功创建了一个新的按摩元素并将其添加到xml文件中,但问题是我停止调试并检查xml文件,我发现它没有保存。 这是HTML文件

    <%@ Page Title="" Language="C#" MasterPageFile="~/MasterPage.master" AutoEventWireup="true"              CodeFile="Chats.aspx.cs" Inherits="Chats" %>

<asp:Content ID="Content1" ContentPlaceHolderID="head" Runat="Server">
    <script type="text/javascript">
        function LoadXMLDoc(FileName) {
            var xmlhttp;
            xmlhttp = new XMLHttpRequest();
            xmlhttp.open("GET", FileName, false);
            xmlhttp.send();
            return xmlhttp.responseXML;
        }
    </script>
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="ContentPlaceHolder1" Runat="Server">
    <center>
        <h1> Chat </h1>
        <div id="Box" style="position:relative;height:200px;width:400px;border-width:2px;border-style:solid;border-color:black">
            <div id="Conversation">
            <script type="text/javascript">
                }
                function Chat() {
                    xmlDoc = LoadXMLDoc("Chats.xml");
                    newNode = xmlDoc.createElement("massage");
                    xmlDoc.documentElement.appendChild(newNode);
                    document.getElementById("Conversation").innerHTML = xmlDoc.getElementsByTagName("massage").length;
                }
            </script>
            </div>
            <div id="Write" style="position:absolute; bottom:0;right:0;">
                <input type="text" id="MassageText" />
                <button id="SendMassageButton" causesvalidation="False" type="submit" onclick="Chat(); return false">Send</button>
            </div>
            </div>
    </center>
</asp:Content>

这是XML文件:

    <?xml version="1.0" encoding="utf-8" ?>
<conversation>
  <massage>
    <from id="6">admin</from>
    <to id="7">blabla</to>
    <time>12/8/2014</time>
    <text>6 to 7</text>
  </massage>
  <massage>
    <from id="7">blabla</from>
    <to id="6">admin</to>
    <time>12/8/2014</time>
    <text>7 to 6</text>
  </massage>
  <massage>
    <from id="8">user1</from>
    <to id="7">blabla</to>
    <time>12/8/2014</time>
    <text>8 to 7</text>
  </massage>
</conversation>

我确信该元素已添加到XML文件中,因为我在添加元素后检查了存在多少个按摩元素,答案是4而不是3,我实际上已经在XML文件中了。

1 个答案:

答案 0 :(得分:0)

请点击此处查看保存文件:

XmlDocument doc = new XmlDocument();
 doc.AppendChild(doc.CreateElement("item","urn:1"));
 doc.Save(Console.Out);

http://msdn.microsoft.com/en-us/library/system.xml.xmldocument.save(v=vs.110).aspx