System.AddIn.Contract.Automation Namespace
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Contains interfaces that components use to access type information and invoke type members.
Structs
RemoteFieldData |
Provides information about a field of a type that components can access across application domain and process boundaries. |
RemoteMemberData |
Provides information about a member of a type that components can access across application domain and process boundaries. |
RemoteMethodData |
Provides information about a method of a type that components can access across application domain and process boundaries. |
RemoteParameterData |
Provides information about a parameter or return value of a method that belongs to a type that components can access across application domain and process boundaries. |
RemotePropertyData |
Provides information about a property of a type that components can access across application domain and process boundaries. |
RemoteTypeData |
Provides information about a type that components can access across application domain and process boundaries. |
Interfaces
IRemoteDelegateContract |
Defines a contract that components can use to access a delegate across application domain and process boundaries. |
IRemoteEventInfoContract |
Defines a contract that components can use to access information about an event across application domain and process boundaries. |
IRemoteFieldInfoContract |
Defines a contract that components can use to access information about a field across application domain and process boundaries. |
IRemoteMethodInfoContract |
Defines a contract that components can use to access information about a method across application domain and process boundaries. |
IRemoteObjectContract |
Defines a contract that components can use to access an object across application domain and process boundaries. |
IRemotePropertyInfoContract |
Defines a contract that components can use to access information about a property across application domain and process boundaries. |
IRemoteTypeContract |
Defines a contract that components can use to access type information and invoke members across application domain and process boundaries. |
Remarks
Use the interfaces in the System.AddIn.Contract.Automation namespace to enable components to access type information for a remote object without having direct access to the Type of the remote object. The System.AddIn.Contract.Automation namespace defines reflection functionality for components that use the interfaces and structures in the System.AddIn.Contract, System.AddIn.Contract.Automation, and System.AddIn.Contract.Collections namespaces to communicate. The interfaces in these namespaces are also called contracts. All contracts derive from the IContract interface.
When using contracts to manage the communication between components, you must implement the IRemoteObjectContract interface in a type to expose the type information to other components. Components can then access the members of the type by calling the GetRemoteType method of the interface to get an IRemoteTypeContract. The other interfaces and structures in the System.AddIn.Contract.Automation namespace provide access to type information for delegates, properties, methods, events, and fields.
Components can use the contracts in the System.AddIn.Contract.Automation namespace to access type information for an object that is in a different process or application domain, or in the same process or application domain.