運行環境:delphi 10.2+kbmmw 5.6.20服務器
在kbmmw 的老版本中,要向服務器傳送一個本地的對象,通常都須要進行一些轉換,例如經過序列化的方式。spa
在新版的kbmmw中這一切都變的很簡單,使用use... 方法就能夠了,很是的方便,下面就簡單的說一下。code
首先無論是在客戶端和服務端都要引用kbmMWSmartUtils 這個單元。orm
首先咱們作服務器端。對象
在服務器端作一個處理過程blog
function Txalionsrv.Performgetobject(ClientIdent: TkbmMWClientIdentity; const Args: array of Variant): Variant; var sl:Tstringlist; begin sl:= use.AsObject<Tstringlist>(args[0]); result:=sl.text; end;
這個意思就是把客戶端傳上來的對象看成Tstringlist 處理。而後返回其內容。get
就這麼簡單。運行便可。string
如今再在客戶端寫對應的請求過程。it
代碼同樣的簡單。io
procedure TForm2.Button8Click(Sender: TObject); var args:array[0..1] of Variant; v:Variant; teststringlist:Tstringlist; begin teststringlist:=Tstringlist.Create; teststringlist.Add('xalion'); teststringlist.Add('紅魚兒'); teststringlist.Add('努力的幹'); teststringlist.Add('煩人的土豪小凡'); args[0]:=use.AsVariant(teststringlist,False) ; v:= kbmMWSimpleClient1.Request('xalion_srv','','getobj',args); memo1.Lines.Add(v); teststringlist.Free; end;
ok, 搞定了,運行客戶端。
無圖無真相
能夠看到,服務上正確的處理了請求並返回信息。
就是這麼簡單。