如果你的XML没有变化,可以放在内存中。
避免每次都读吧。
或者你的XML比较大,想办法缩小些。

解决方案 »

  1.   

    xml,非常小 ,读取xml 应该不是IO瓶颈,我想瓶颈是 trans.Transform(doc,null,sw,null);
      

  2.   

    不用xsl进行解析呢?用dom或者其它解析器
      

  3.   

    用XSLT就是有这个问题
    不过.NET v2里面的XslTransform性能有大幅度提高(4倍以上)所以说做WEB的话XML + XSL实在是不太好的方式
    不如把XML作为数据源加入DataSet,再梆定到数据梆定控件上
      

  4.   

    你的问题似乎只能通过缓冲解决

    Label1.Text = sw.ToString();
    这里把sw.ToString()的内容缓存起来
      

  5.   

    <?xml version="1.0" encoding="GB2312"?>
    <?xml-stylesheet type='text/xsl' href='/expert/Xsl/2.xsl'?>这么解析是不是好点呢?
    CSDN就是这么做的吧
      

  6.   

    客户端解析存在IE版本得问题,而且 <?xml-stylesheet type='text/xsl' href='/expert/Xsl/2.xsl'?> 没法灵活定制
      

  7.   

    把IO操作注释,只留下 xml 读取(如下),再次进行压力测试 ,发现性能还是不行,CPU 照样彪到100% 。
    XPathDocument doc = new XPathDocument(Server.MapPath("test.xml"));
    XslTransform trans = new XslTransform();
    trans.Load(Server.MapPath("test.xsl"));哪位有更好得解决方案啊 ?
      

  8.   

    尽量用客户端解析。
    先判断客户端IE版本:
      >=5.5,直接输出.xml;
      5.0,客户端脚本加载xmlDom和xmlHttp对象,由它们加载.xml和.xsl,在客户端解析;
      <5.0或其它浏览器,在服务器端解析。灵活定制的问题,可以由服务器端动态输出.xml来解决,比如用.aspx写.xml,或使用webService