May be It's a bug |
缺席
|
pcplayer99
尊榮會員 發表:146 回覆:790 積分:632 註冊:2003-01-21 發送簡訊給我 |
Delphi2005: [code]
Var
ARow:DataRow; begin
ARow:=DataSet11.Tables['Product'].NewRow;
ARow['ID']:=DataSet11.Tables['Product'].Rows.Count; .......
end;
[/code 上述代码在 WinForm 的程式里可以 Compile,也Run得很好。 同样的代码,放到 ASP.NET 的程式里,Compile的时候出错误提示:[Error] WebForm2.pas(390): E2010 Incompatible types: 'Object' and 'Integer' 提示指:ARow['ID']:=DataSet11.Tables['Product'].Rows.Count; 这一句错误。 这该算是Delphi2005的BUG吗?还是我哪里没做对? 程序里都是拖了BdpConnection和BdpDataAdapter到Form里,及生成了DataSet
|
pcplayer99
尊榮會員 發表:146 回覆:790 積分:632 註冊:2003-01-21 發送簡訊給我 |
上述问题,经过多次实验,发现在 ASP.NET 的Project 里可以这样写: ARow['ID']:=TObject(DataSet11.Tables['Product'].Rows.Count); 问题是,既然同样是 Delphi2005,同样是在Dot Net环境下,同样是用BdpConnection和BdpDataAdapter,对同样一个Access的DataBase File进行操作,在WinForm Project下可以直接把一个 Integer 给一个DataRow,在ASP.NET下却不可以,需要加上 TObject 做类型转换。这该算是一个BUG了。浪费学习者的时间。 在 VS2003下,在MSDN的例子里,是可以直接把一个 int 给一个 DataRaw 的。而Delphi2005里又没有相关的说明和例子,一查Delphi的Help就跑到MS提供的MSDN里去了。要靠学习者自己试,真是很浪费时间。 另外,Delphi2005非常吃RAM,一下就用掉280M,512M RAM的机器硬盘狂转。但用VS2003就没感觉。 FrameWork是人家MS的,BORLAND凭什么和VS2003竞争?不把产品做得更好用更稳定,不提供更多的开发资料和HELP,谁敢用DELPHI呀。
|
puff
一般會員 發表:1 回覆:13 積分:2 註冊:2002-08-13 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |