Soap.InvokeRegistry.TRemotable
Delphi
TRemotable = class
C++
class PASCALIMPLEMENTATION TRemotable : public System::TObject
Eigenschaften
Typ | Sichtbarkeit | Quelle | Unit | Übergeordnet |
---|---|---|---|---|
class | public | Soap.InvokeRegistry.pas Soap.InvokeRegistry.hpp |
Soap.InvokeRegistry | Soap.InvokeRegistry |
Beschreibung
TRemotable ist die Basisklasse für Klassen, die in einer Web-Service-Anwendung als Parameter oder Rückgabewerte übergeben werden können.
Verwenden Sie TRemotable als Basis für Klassen, die als Parameter oder Rückgabewerte für aufrufbare Schnittstellen verwendet werden. Nachkommen von TRemotable können entweder nichtskalare Typen darstellen oder skalare Typen, die keinem Object Pascal-Typ entsprechen. TRemotable wird mit Laufzeit-Typinformationen (RTTI) compiliert und verfügt über einen virtuellen Konstruktor, mit dessen Hilfe die Registrierung Klasseninstanzen bereitstellen kann.
Anmerkung: Für Klassen, die skalare Werte ohne entsprechenden Object Pascal-Typ repräsentieren, sollte TRemotableXS als Basis verwendet werden. TRemotableXS ist von der Klasse TRemotable abgeleitet.
Anmerkung: Bei der Erstellung eines TRemotable-Nachkommens können Sie mit der Direktive stored festlegen, ob eine Eigenschaft als Elementknoten oder als Attributknoten codiert wird. Wenn Sie bei der Deklaration einer Eigenschaft die stored-Direktive auf AS_ATTRIBUTE setzen, wird die Eigenschaft als Attributknoten codiert. Eigenschaften, die ohne stored-Direktive deklariert werden oder deren stored-Direktive auf einen anderen Wert gesetzt wird, werden als Elementknoten codiert.
Sowohl die Client- als auch die Serveranwendung müssen bei der entsprechenden Registrierung einen Nachkommen von TRemotable registrieren. Die Registrierung einer Remotable-Klasse erfolgt mit der Methode RegisterXSClass der globalen Variable RemTypeRegistry.
In Serveranwendungen werden Instanzen von TRemotable-Nachkommen, die Eingabeparameter für eine aufrufbare Schnittstelle darstellen, beim Unmarshaling des Methodenaufrufs automatisch erstellt. Ihre Freigabe erfolgt ebenfalls automatisch, sobald das Marshaling der Ausgabeparameter oder des Rückgabewertes abgeschlossen ist und die Werte für die Übertragung zum Client bereitstehen. Instanzen von TRemotable-Nachkommen, die durch einen externen Methodenaufruf unter Verwendung einer aufrufbaren Schnittstelle erstellt wurden, werden automatisch freigegeben, sobald das Marshaling des Wertes des TRemotable-Nachkommens für die Rückübertragung an die Client-Anwendung abgeschlossen ist.
Der Aufrufer einer aufrufbaren Schnittstelle (Client) ist für die Erstellung aller als Eingabeparameter übergebenen TRemotable-Instanzen verantwortlich. Die Freigabe der vom Client erstellten oder als Ausgabeparameter bzw. Methodenergebnisse zurückgegebenen TRemotable-Instanzen muss ebenfalls vom Client selbst vorgenommen werden.