我最近用C#做了一个WebService,当我输入一条SQL语句的时候 ,服务器端返回一组XML格式的数据,并由ClientDataset调用这个XML格式的数据,现在的问题是每次查询时WebService返回的值都是正确的,但是当打开ClientDataset时,只能看到第一次的查询结果,无论服务器返回什么数据,ClientDataset不更新,请问这是什么原因.
程序如下:
var
  A:ServiceSoap;
  B:WideString;
  XMLDoc: IXMLDocument;
begin
  Memo1.Clear;
  Label1.Caption := '';
  ClientDataset1.Active := FALSE;
  A := HTTPRIO1 as ServiceSoap;
  B:=A.GetQueryData(Edit1.Text );
  Memo1.Lines.Add( B );  XMLDoc := NewXMLDocument;
  XMLDoc.Encoding := 'UTF-8';
  XMLDoc.LoadFromXML(B);
  XMLTransformProvider1.TransformRead.SourceXmlDocument := XMLDoc.GetDOMDocument;
  ClientDataset1.Active := TRUE;
  Label1.Caption := '记录总数:'+IntToStr(ClientDataset1.RecordCount );//无论服务器返回多少数据,这个数字总是第一次的结果.
end;