Кто-нибудь знает о потомке TDataset, который работает с Generics и RTTI, чтобы я мог писать подобный код и использовать компоненты с поддержкой данных в графическом интерфейсе? :
...
ds:TDataset;
...
procedure DoStuff;
begin
ds:=TDataset.create;
ds.add(TPerson.Create('A.','Hitler',77));
ds.add(TPerson.Create('O.','Bin Laden',88));
end;
Это должно быть возможным. Fielddefs можно создать с помощью RTTI, поскольку известен точный тип данных. Значения также можно автоматически упорядочивать туда и обратно, поэтому вы можете просматривать и редактировать данные, которые находятся в классе или записи.
Я ненавижу писать много бесполезного маршалингового кода, в то время как необходимая информация для этого уже доступна через RTTI.
Или, может быть, кто-то когда-то написал какой-то адаптер TEnumerable TDataset?
Что-то подобное существует, или мне начать писать его?
...
Ближайшее, что я смог найти является (отличным!) примером Марко Канту из Mastering Delphi 7, но сам код не использует новые функции языка, такие как дженерики, новую систему RTTI или атрибуты, и он не не работает с Unicode delphi. TDataset тоже изменился с D7.