TWebModule の設計時に定義され、OnAction イベントに結合された TWebAction アイテムの数が増え続ける Web サービスがあります。
'TSuperObject'.S['errormessage'] := lErrMsg;
リクエストは URL を介した HTTP GET であり、レスポンスは「手作りの」JSON データです。つまり、JSON データを使用してこれを HTTP POST リクエストに変更したいなどのステートメントで実行時に構成され、すべてのリクエスト/レスポンス JSON 構造が (逆) シリアル化されます。 / SuperObjects TSuperRttiContext AsJSONおよびAsTypeメソッドを使用して、適切なオブジェクト (場合によってはレコード) に変換します。
新しい「Objects to be JSON (de)serialized」を設計時の TWebactions にマッピング/リンクするためのデータ構造を作成するにはどうすればよいですか? これらのオブジェクトはすべて異なり (一部のプロパティは共通の祖先にある可能性があります)、オブジェクトまたはレコードのプロパティ自体を含む場合があります ( FData: Array of TSubObject
[どの SuperObject が正常にシリアル化できるか] など)。
注: タイミング統計 (これも維持する必要があります) を収集するために使用した簡単な列挙型が既にありますが、これも統合できます。
type
TWebAct = (
ttinfo,
ttlogin,
...
ttgetcostitemlist,
ttgetvacationplanning
);
基本的に、新しい TWebAction が追加されるたびにメンテナンスを行う必要がある場所の数を最小限に抑えたいと考えています。