全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:1083
推到 Plurk!
推到 Facebook!

May be It's a bug

缺席
pcplayer99
尊榮會員


發表:146
回覆:790
積分:632
註冊:2003-01-21

發送簡訊給我
#1 引用回覆 回覆 發表時間:2005-02-03 12:22:05 IP:61.141.xxx.xxx 未訂閱
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

發送簡訊給我
#2 引用回覆 回覆 發表時間:2005-02-03 12:41:35 IP:61.141.xxx.xxx 未訂閱
上述问题,经过多次实验,发现在 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

發送簡訊給我
#3 引用回覆 回覆 發表時間:2005-02-03 13:44:39 IP:211.75.xxx.xxx 未訂閱
雖然說Delphi 2005有待加強,但是對有些人喜歡用Pascal語言 寫程式(編程)而言,如果 VS.NET 有提供,那麼應該會優先選擇 VS.NET。
系統時間:2024-05-21 16:00:45
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!