远程方法的定义和调用

xe datasnap自动支持TParams对象的序列,无需我们手动序列,真的很方便。

远程方法定义示例:

function TServerMethods1.GetData(sql: string;
  params: TParams): TDataSet;
begin
  cds.Close;
  cds.CommandText := '';
  cds.CommandText := sql;
  cds.Params.Clear;
  cds.Params := params;
  cds.Open;
  Result := cds;
end;

客户端远程调用示例:

function TMySQL.GetData: TDataSet;
begin
  fSqlMethod.ServerMethodName := 'TServerMethods1.getData';
  fSqlMethod.ParamByName('sql').AsString := fSqlcommand;
  fSqlMethod.ParamByName('params').AsParams := fQry.Params;
  fSqlMethod.ExecuteMethod;
  Result := fSqlMethod.ParamByName('returnparameter').AsDataSet;
end;

 

posted @   delphi中间件  阅读(972)  评论(1编辑  收藏  举报
编辑推荐:
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?
点击右上角即可分享
微信分享提示