我想从客户端向服务端提交多个OleVariant内容.最初我想这样这实现
function SaveData(aDataArr:array of OleVariant;
aTableArr:array of string;
aKeyArr:array of string;
var aErrorStr:string):Boolean;
这样经测试不行,DATASNAP参数不能为数组.
现在我用TJSONObject类型做为参数.
例如
客户端
msg := TJSONObject.Create;
msgtype:=TJSONPair.Create('MsgType','Data');
idata:=ClientDataSet1.Data;
msgContent1:=TJSONPair.Create('MsgContent1',idata);
idata:=ClientDataSet2.Data;
msgContent2:=TJSONPair.Create('MsgContent2',idata);
msg.AddPair(msgtype);
msg.AddPair(msgContent1);
msg.AddPair(msgContent2);
server.SaveData(msg);
服务端
function SaveData(aMsg:TJSONObject):Boolean;
iMsgType:string;
idata:olevariant;
begin
iMsgType:=TJSONObject(aMsg).Get(0).JsonValue.Value;
???
end;
我这样想对不对,这试了一下,不报错,msgtype可以提出信息,olevariant就不知道怎么提取了.
请大家帮帮忙了