1.绝对不会太久,不必担心,我们试过10000条的记录集,时间是12s.
2.数据岛的数据加载可以设定同步或异步,但是绑定的UI一定是异步画的。
3.dso.onreadystatuchange == "complete" 的时候比较好
4.XML格式的问题,如果需要自己的格式,那么就自己生成XML吧。

解决方案 »

  1.   

    to xujun1974:
    感谢你的回复。1万条记录才 12秒?
    我刚才1000条就快20秒了,本地SQL数据库,一个非常简单的查询
    select * from books<xml id=dso src="somexml.xml"></xml>
    如果我要在客户端动态改变src呢?
    还是用  dso.onreadystatuchange == "complete" 
    关于 for xml auto 查询以及xml的返回,不知各位还有什么好的意见,
      

  2.   

    除了数据绑定
    用数据岛只是为了方便而已。
    如果不用数据岛,用jscript的string,用textarea等都可以把服务器的数据放到客户端去。XML元素还是用onreadystatechange好,ondataaviable好象有点问题的。。用 Recordset 接收 for xml auto 语句的结果时,返回的是单列多行的结果。
    JScript中大约的操作是:
    var conn=...
    var rs=...
    rs.Open("...for xml auto");
    var xml="<data>"+new VBArray(rs.GetRows()).toArray().join("")+"</data>";
    rs.Close();
    ..
      

  3.   

    如果要储存到客户端,
    那么:var xd=new ActiveXObject("Microsoft.XMLDOM"
    );
    xd.loadXML("<data>"+new VBArray(rs.GetRows()).toArray().join("")+"</data>");
    Response.ContextType="text/xml";
    Response.CharSet="utf-8";
    xd.save(Response);
      

  4.   

    to lostinet:for xml autp 返回的结果的排列样式可以改吗?
    好像默认是<tablename col1="text1" col2="text2" col3="text3" />我想要的是这样:<tablename>  
       <col1>text1</col1>
       <col2>text2</col2>
       <col3>text3</col3>
    </tablename>