1有人告诉我用delphi的transactional object开发,而不用activex server这样可以吗2我用activex server遇到了如下问题,希望能得到高手的指点
我在接口中增加了一个getpage方法,用来取得数据库数据,并返回给web增加了一个DATAMODULE,adoquery,adoconnection,并且属性都连接正确
Tadopage = class(TASPObject, Iadopage)
private
dm:TDM;//数据模块
protected
procedure OnEndPage; safecall;
procedure OnStartPage(const AScriptingContext: IUnknown); safecall;
procedure get_page; safecall; public
procedure initialize;override;
destructor destroy;override;
end;implementationuses ComServ,forms;
destructor tadopage.destroy;
begin
inherited;
dm.destroy;
end;
procedure tadopage.initialize;
begin
inherited;
dm:=tDM.create(forms.application);
end;
procedure Tadopage.get_page;
begin
try
dm.adoquery1.Close;
dm.adoquery1.SQL.Clear;
dm.adoquery1.sql.add('select * from Grade');
dm.adoquery1.open; //发现这条语句执行就会抛出 异常,难道这么写不对吗。//response.write('<table>');
//取得表格标题
//response.write('<tr>');
//for i:=0 to dm.adoquery1.fields.count-1 do
//response.write('<td>'+dm.adoquery1.fields[i].fieldname+'</td>');
//response.write('</tr>');
//j:=1;
//with dm.adoquery1 do
//while (not eof)do
//begin
//response.write('<tr>');
//取得表格内容
//for i:=1 to fields.count do
//response.write('<td>'+fields[i].asstring+'</td>');
//response.write('</tr>');
//next;
//end;
//response.write('</table>');
//dm.adoquery1.close;
except
response.write('数据出错啦!');
end;dm.adoquery1.open; //发现这条语句执行就会抛出 异常,难道这么写不对吗。希望哪位仁兄做个简单的测试,然后告诉我怎么回事,马上给分
我在接口中增加了一个getpage方法,用来取得数据库数据,并返回给web增加了一个DATAMODULE,adoquery,adoconnection,并且属性都连接正确
Tadopage = class(TASPObject, Iadopage)
private
dm:TDM;//数据模块
protected
procedure OnEndPage; safecall;
procedure OnStartPage(const AScriptingContext: IUnknown); safecall;
procedure get_page; safecall; public
procedure initialize;override;
destructor destroy;override;
end;implementationuses ComServ,forms;
destructor tadopage.destroy;
begin
inherited;
dm.destroy;
end;
procedure tadopage.initialize;
begin
inherited;
dm:=tDM.create(forms.application);
end;
procedure Tadopage.get_page;
begin
try
dm.adoquery1.Close;
dm.adoquery1.SQL.Clear;
dm.adoquery1.sql.add('select * from Grade');
dm.adoquery1.open; //发现这条语句执行就会抛出 异常,难道这么写不对吗。//response.write('<table>');
//取得表格标题
//response.write('<tr>');
//for i:=0 to dm.adoquery1.fields.count-1 do
//response.write('<td>'+dm.adoquery1.fields[i].fieldname+'</td>');
//response.write('</tr>');
//j:=1;
//with dm.adoquery1 do
//while (not eof)do
//begin
//response.write('<tr>');
//取得表格内容
//for i:=1 to fields.count do
//response.write('<td>'+fields[i].asstring+'</td>');
//response.write('</tr>');
//next;
//end;
//response.write('</table>');
//dm.adoquery1.close;
except
response.write('数据出错啦!');
end;dm.adoquery1.open; //发现这条语句执行就会抛出 异常,难道这么写不对吗。希望哪位仁兄做个简单的测试,然后告诉我怎么回事,马上给分
用delphi2006吧,里面的Asp.net可以用ObjectPascal书写脚本,用ADO.net操作数据库,功能已经超过VS2003了.