以文本方式查看主题

-  中文XML论坛 - 专业的XML技术讨论区  (http://bbs.xml.org.cn/index.asp)
--  『 XSL/XSLT/XSL-FO/CSS 』  (http://bbs.xml.org.cn/list.asp?boardid=8)
----  [求助]   有没有高手可以帮我解决一下  (http://bbs.xml.org.cn/dispbbs.asp?boardid=8&rootid=&id=32530)


--  作者:020604111
--  发布时间:5/17/2006 8:04:00 AM

--  [求助]   有没有高手可以帮我解决一下
求助  :我的毕业设计是做一个基于XML机票信息发布系统,下面分别是机票的XML文件,XSL文件,以及将数据添加到XML文件中的WebForm1.aspx.cs,前两个文件都能正常运行并显示结果,但是在运行WebForm1.aspx.cs时就会出现如下的问题

(所有的文件是放在faight文件夹中的)

“/faight”应用程序中的服务器错误。
--------------------------------------------------------------------------------

意外的 XML 声明。 行 2,位置 3。
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。

异常详细信息: System.Xml.XmlException: 意外的 XML 声明。 行 2,位置 3。

源错误:


行 41:    {
行 42:     XmlDocument xmlDoc = new XmlDocument();
行 43:     xmlDoc.Load(Server.MapPath("tickets.xml"));
行 44:     myXml.Document = xmlDoc;
行 45:    }

源文件: c:\inetpub\wwwroot\faight\webform1.aspx.cs    行: 43

源代码如下:

tickets.xml


<?xml version="1.0" encoding="GB2312" standalone="yes"?>
<?xml-stylesheet type="text/xsl" href="pp.xsl"?>
       <Air-Tickets  Date="2006/3/22">
     <Ticket>
     <From>西安</From>
     <To>东京</To>
     <DepartingTime>14:00</DepartingTime>
     <ArrivingTime>16:00</ArrivingTime>
     <price type="Economy"> 1180 </price>
     <price1 type="Business"> 1480 </price1>
     </Ticket>
     <Ticket>
        <From>西安</From>
     <To>首尔</To>
     <DepartingTime>16:00</DepartingTime>
     <ArrivingTime>18:00</ArrivingTime>
     <price type="Economy"> 1180 </price>
        <price1 type="Business"> 1480 </price1>
  </Ticket>
     <Ticket>
      <From> 西安</From>   
      <To>   纽约</To>
            <DepartingTime>09:00</DepartingTime>
      <ArrivingTime>11:00</ArrivingTime>
      <price type="‘Economy’"> 1080 </price >
         <price1 type="‘Business’"> 1380 </price1>
     </Ticket>
     <Ticket>
      <From> 西安</From >   
      <To>   新德里</To>
      <DepartingTime>13:00</DepartingTime>
      <ArrivingTime>15:00</ArrivingTime>
      <price type="‘Economy’"> 1080 </price >
      <price1 type="‘Business’"> 1380 </price1 >
   </Ticket>
   <Ticket>
      <From> 西安</From >   
      <To>   莫斯科</To>  
      <DepartingTime>17:00</DepartingTime>
       <ArrivingTime>19:00</ArrivingTime>
      <price  type="‘Economy’"> 1080 </price >
      <price1 type="‘Business’"> 1380 </price1 >
         </Ticket>
      </Air-Tickets>


pp.xsl

  <?xml version="1.0" encoding="GB2312" ?>
  <xsl:stylesheet xmlns:xsl="http://www.w3.org/TR/WD-xsl">
  <xsl:template match="/">
  <HTML>
  <BODY>
  <CENTER>
  <TABLE BORDER="1">
  <TR>
  <TD>起始地</TD>
  <TD>目的地</TD>
  <TD>起飞时间</TD>
  <TD>到达时间</TD>
  <TD>经济仓价格</TD>
  <TD>头等仓价格</TD>  
  </TR>
  <xsl:for-each select="Air-Tickets/Ticket">
  <TR>
  <TD>
  <xsl:value-of select="From" />
  </TD>
  <TD>
  <xsl:value-of select="To" />
  </TD>
  <TD>
  <xsl:value-of select="DepartingTime" />
  </TD>
  <TD>
  <xsl:value-of select="ArrivingTime" />
  </TD>
  <TD>
  <xsl:value-of select="price" />
  </TD>
  <TD>
  <xsl:value-of select="price1" />
  </TD>
  </TR>
  </xsl:for-each>
  </TABLE>
  </CENTER>
  </BODY>
  </HTML>
  </xsl:template>
  </xsl:stylesheet>

WebForm1.aspx.cs

using System;

using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Web;
using System.Web.SessionState;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;
using System.Xml;

namespace faight
{
 /// <summary>
 /// WebForm1 的摘要说明。
 /// </summary>
 public class WebForm1 : System.Web.UI.Page
 {
  protected System.Web.UI.WebControls.Label Label1;
  protected System.Web.UI.WebControls.Label Label7;
  protected System.Web.UI.WebControls.Label Label6;
  protected System.Web.UI.WebControls.Label Label5;
  protected System.Web.UI.WebControls.Label Label4;
  protected System.Web.UI.WebControls.Label Label3;
  protected System.Web.UI.WebControls.TextBox From;
  protected System.Web.UI.WebControls.TextBox To;
  protected System.Web.UI.WebControls.TextBox DepartingTime;
  protected System.Web.UI.WebControls.TextBox ArrivingTime;
  protected System.Web.UI.WebControls.TextBox price;
  protected System.Web.UI.WebControls.TextBox price1;
  protected System.Web.UI.WebControls.Label Label2;
  protected System.Web.UI.WebControls.Label Label8;
  protected System.Web.UI.WebControls.Xml myXml;
  protected System.Web.UI.WebControls.Button Submit;
  protected System.Web.UI.WebControls.Label mudidi ;
 
  private void Page_Load(object sender, System.EventArgs e)
  {
   if(!IsPostBack)
   {
    XmlDocument xmlDoc = new XmlDocument();
    xmlDoc.Load(Server.MapPath("tickets.xml"));
    myXml.Document = xmlDoc;
   }
  }

  #region Web 窗体设计器生成的代码
  override protected void OnInit(EventArgs e)
  {
   //
   // CODEGEN: 该调用是 ASP.NET Web 窗体设计器所必需的。
   //
   InitializeComponent();
   base.OnInit(e);
  }
  
  /// <summary>
  /// 设计器支持所需的方法 - 不要使用代码编辑器修改
  /// 此方法的内容。
  /// </summary>
  private void InitializeComponent()
  {    
                                             this.Submit.Click += new System.EventHandler(this.Submit_Click);
   this.Load += new System.EventHandler(this.Page_Load);

  }
  #endregion

  private void Submit_Click(object sender, System.EventArgs e)

  {
   XmlDocument xmlDoc =new XmlDocument();
   xmlDoc.Load(Server.MapPath("tickets.xml"));

   XmlNode xmlRoot =xmlDoc.DocumentElement;

   XmlElement xmlTicket =xmlDoc.CreateElement("Ticket");
   XmlElement xmlFrom =xmlDoc.CreateElement("From");
   XmlElement xmlTo =xmlDoc.CreateElement("To");
   XmlElement xmlDepartingTime=xmlDoc.CreateElement("DepartingTime");
   XmlElement xmlArrivingTime=xmlDoc.CreateElement("ArrivingTime");
   XmlElement xmlprice=xmlDoc.CreateElement("price");
   XmlElement xmlprice1=xmlDoc.CreateElement("price1");

   xmlFrom.InnerXml=From.Text;
   xmlTo.InnerXml=To.Text;
   xmlDepartingTime.InnerXml=DepartingTime.Text;
   xmlArrivingTime.InnerXml=ArrivingTime.Text;
   xmlprice.InnerXml=price.Text;
   xmlprice1.InnerXml=price1.Text;

   xmlTicket.AppendChild(xmlFrom);
   xmlTicket.AppendChild(xmlTo);
   xmlTicket.AppendChild(xmlDepartingTime);
   xmlTicket.AppendChild(xmlArrivingTime);
   xmlTicket.AppendChild(xmlprice);
   xmlTicket.AppendChild(xmlprice1);

            xmlRoot.AppendChild(xmlTicket);
   xmlDoc.Save(Server.MapPath("tickets.xml"));
   xmlDoc.Load(Server.MapPath("tickets.xml"));
   myXml.Document=xmlDoc;

  }

 }
}



W 3 C h i n a ( since 2003 ) 旗 下 站 点
苏ICP备05006046号《全国人大常委会关于维护互联网安全的决定》《计算机信息网络国际联网安全保护管理办法》
46.875ms