想做一个封装ADO记录集的东东,注册到服务器上供ASP调用,该怎么做呢? 提供思路即可 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 要是不封装业务,还是就用ADO吧,RECORDSET已经封的够好了; 我现在还在传递记录集,我怕以后变为XML,为了统一调用,我需要封装一下取数据即可,在exe中可以写个类,在ASP中可怎么做啊。只封装取数据操作即可。 继续继续简单的封装TClientData = class(TObject) private ClientData:ADODB_TLB.Recordset;//数据 public procedure SetValue(const newData:OleVariant); function GetFieldValue(const FieldName:WideString):OleVariant;overload; function GetFieldValue(const FieldIndex:integer):OleVariant;overload; function GetRecordCount:integer; procedure First; procedure Last; procedure Previous; procedure Next; function Eof:WordBool; function Bof:WordBool; constructor Create; destructor Destroy;override; end;procedure TClientData.SetValue(const newData:OleVariant);begin self.ClientData := IUnknown(newData) as ADODB_TLB._RecordSet;end;可是self.ClientData 有初始值,赋值会出错,存取异常。在构造函数中写了self.InitInstance(self);后,存取正常,可是在Free函数中又存取异常,熟悉VCL的兄弟多帮忙啦。 写了个普通COM解决,开始还以为COM是无状态的,无法记录数据,看来是我错啦,COM+才是无状态的,相比之下,二进制重用要比源码级重用简单哟:) 有两个ADOQUERY怎么实现主从表的关系?(TABLE简单,ADOQUERY不知道怎么实现) delphi sendmessge 如何传递字符串内容的信息? 我的project做好后发现目录下有很多文件:dfm,ddp,pas等各种窗体文件,但为什么别人的软件就很简单? FS,这下你完蛋了吧 看看程序!100分,求解! 程序崩溃救命 谁那里有水晶报表7.0安装包或者设计器也行,急用!水晶报表8.0向下兼容吗,谢谢!本人QQ 147040054 进度条的问题 IdHTTP下载繁体字网页面产生乱码 DAX错误 VCL的HWND问题. 应用程序服务器连接数量限制!!!!!!!!!!!
只封装取数据操作即可。
简单的封装
TClientData = class(TObject)
private
ClientData:ADODB_TLB.Recordset;//数据
public
procedure SetValue(const newData:OleVariant);
function GetFieldValue(const FieldName:WideString):OleVariant;overload;
function GetFieldValue(const FieldIndex:integer):OleVariant;overload;
function GetRecordCount:integer;
procedure First;
procedure Last;
procedure Previous;
procedure Next;
function Eof:WordBool;
function Bof:WordBool;
constructor Create;
destructor Destroy;override;
end;
procedure TClientData.SetValue(const newData:OleVariant);
begin
self.ClientData := IUnknown(newData) as ADODB_TLB._RecordSet;
end;
可是self.ClientData 有初始值,赋值会出错,存取异常。
在构造函数中写了self.InitInstance(self);后,存取正常,可是在Free函数中又存取异常,熟悉VCL的兄弟多帮忙啦。