微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

delphi – 如何获取内存中对象的数据集?

有没有人知道一个与Generics和RTTI一起工作的TDataset后代,这样我就可以编写这样的代码,并在GUI中使用数据感知组件? :
...
ds:TDataset<TPerson>;
...

procedure DoStuff;
begin    
  ds:=TDataset<TPerson>.create;
  ds.add(TPerson.Create('A.','Hitler',77));
  ds.add(TPerson.Create('O.','Bin Laden',88));
 end;

这应该是可能的. fielddef可以通过RTTI创建,因为已知数据的确切类型.值也可以来回自动编组,因此您可以查看和编辑类或记录中的数据.

我讨厌编写大量无用的编组代码,而已经通过RTTI获得所需的信息.

或许有人曾经写过某种TEnumerable< - > TDataset适配器?

这样的事情是存在的,还是我应该开始写一个

我能找到的最接近的东西是来自Mastering Delphi 7的marco Cantu(优秀!)example,但代码本身并没有使用泛型,新的RTTI系统或属性等新语言功能,而且它没有使用Unicode delphi.自D7以来,TDataset也发生了变化.

解决方法

TMS Aurelius中包含的TAureliusDataSet非常接近.

原文地址:https://www.jb51.cc/delphi/102204.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐