用 XML + XSL 如何生成 HTML ? 我想前台用XML + XSL,后台用WebService做一网站.(无刷新那种)不过,现在真不知道该从哪做起... 希望大家能给点建议...如果有相关例子一定要发我一份. 先谢了...
MSN/E-MAIL: [email protected]
回复有分哟...

解决方案 »

  1.   

    是生成不了HTML的,XSL只是给XML 添加样式,使之在浏览器运行看起来像HTML一样。
      

  2.   

    //下例用output.xsl来把books.xml转换为books.htmlXmlDocument doc = new XmlDocument();
    doc.Load("books.xml");//修改XML文件
    XmlElement root = doc.DocumentElement;
    root.FirstChild.LastChild.InnerText = "12.95";//创建一个用来转换的XPathNavigator
    XPathNavigator nav = root.CreateNavigator();//转换文件
    XslTransform xslt = new XslTransform();
    xslt.Load("output.xsl");
    XmlTextWriter writer = new XmlTextWriter("books.html", null);
    xslt.Transform(nav, null, writer, null);
      

  3.   

    XslTransform有很多重载,你也可以输出html到stream或TextWriter(覆盖基类的Render方法直接输出到网页),视具体需要而定
      

  4.   

    定义好xslt, 把要转换的xmlstring带上, 
    String strModelDoc = @" <?xml-stylesheet type=""text/xsl"" href=""xxx.xslt""?><?xml version=""1.0"" encoding=""UTF-8""?> " + xmlstring;
    Response.Write(strModelDoc);
      

  5.   

    似乎明白了点... 但要如何实现无刷新?我是想前台用Javascript调用后台WebService,返回数据后对其进行解析...要是有项目可参考就好了... 呵.. 谢谢各位.. 有相关学习资料别忘了发我邮箱哟...MSN/E-MAIL: [email protected]
      

  6.   

    private void Excel_Button_Click(object sender, System.EventArgs e)
      {
       if(this.ds==null||ds.Tables.Count<=0|| ds.Tables[0].Rows.Count<=0)
       {
        UtilClass.message("没有查询结果,请先查询后才能从查询结果中导出数据!");
        return;
       }   string fileName = "";
                
       try
       {
        SaveFileDialog sFile = new SaveFileDialog();
        sFile.Filter = "Text files (*.xls)|*.xls";
        sFile.FilterIndex = 1;
        sFile.RestoreDirectory = true;    if(sFile.ShowDialog() == DialogResult.OK)
        {
         fileName = sFile.FileName;
         XmlDocument xlsDoc = new XmlDocument();
         xlsDoc.LoadXml(ds.GetXml());
         XPathNavigator nav = xlsDoc.DocumentElement.CreateNavigator();
         XmlTextWriter writer = new XmlTextWriter(fileName,null);
         writer.WriteProcessingInstruction("xml","version=\"1.0\"");
         XslTransform transform = new XslTransform();
         transform.Load(Application.StartupPath+"\\xsl\\Transform.xsl");
         transform.Transform(nav,null,writer,null);
         writer.Close();
        }
       }
       catch
       {
       
       }
      } 
      

  7.   

    当然是可以的; 在xslt文件中顶点节点下可以添加<xsl:output method="html"/>就可以了,那么xslt转换出来的结果就是html文档了,同时在output也还可以设置html的DocType