Export (0) Print
Expand All
3 out of 4 rated this helpful - Rate this topic

System.AddIn.Contract.Automation Namespace

The System.AddIn.Contract.Automation namespace contains interfaces that components use to access type information and invoke type members.

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.

  StructureDescription
Public structureRemoteFieldDataProvides information about a field of a type that components can access across application domain and process boundaries.
Public structureRemoteMemberDataProvides information about a member of a type that components can access across application domain and process boundaries.
Public structureRemoteMethodDataProvides information about a method of a type that components can access across application domain and process boundaries.
Public structureRemoteParameterDataProvides 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.
Public structureRemotePropertyDataProvides information about a property of a type that components can access across application domain and process boundaries.
Public structureRemoteTypeDataProvides information about a type that components can access across application domain and process boundaries.
  InterfaceDescription
Public interfaceIRemoteDelegateContractDefines a contract that components can use to access a delegate across application domain and process boundaries.
Public interfaceIRemoteEventInfoContractDefines a contract that components can use to access information about an event across application domain and process boundaries.
Public interfaceIRemoteFieldInfoContractDefines a contract that components can use to access information about a field across application domain and process boundaries.
Public interfaceIRemoteMethodInfoContractDefines a contract that components can use to access information about a method across application domain and process boundaries.
Public interfaceIRemoteObjectContractDefines a contract that components can use to access an object across application domain and process boundaries.
Public interfaceIRemotePropertyInfoContractDefines a contract that components can use to access information about a property across application domain and process boundaries.
Public interfaceIRemoteTypeContractDefines a contract that components can use to access type information and invoke members across application domain and process boundaries.
Did you find this helpful?
(1500 characters remaining)
Thank you for your feedback

Community Additions

ADD
Show:
© 2014 Microsoft. All rights reserved.