ich möchte für eine Klasse etwas schreiben das alle Eigenschaften derselben benutzt. (Vorerst ein
unit-test)
Ich verstehe nicht, was du machen willst. Mit Eigenschaften meinst du Properties? Was meinst du mit "benutzt"? Mit
RTTI lässt sich einiges bewerkstelligen:
Delphi-Quellcode:
type
TTestObject = class(TObject)
private
FValue1: String;
public
property Value1: String
read FValue1 write FValue1;
end;
var
rttiType: TRttiType;
rttiProp: TRttiProperty;
rttiPropType: TRttiType;
begin
rttiType := TRttiContext.Create.GetType(TTestObject);
for rttiProp in rttiType.GetDeclaredProperties do
begin
if rttiProp.Visibility = mvPublic then
begin
rttiPropType := rttiProp.PropertyType;
if rttiPropType.Handle = TypeInfo(String) then
ShowMessage(Format('Gefunden: %s', [rttiProp.Name]));
end;
end;
end;
Du könntest mit mORMot die
published Eigenschaften einer Klasse JSON serialisieren. Die Werte in der JSON-Datei ändern und es zurückspielen. Das sind nur zwei Funktionsaufrufe.
Bis bald...
Thomas