The System.Runtime.Remoting.Contexts namespace contains objects that define the contexts all objects reside within. A context is an ordered sequence of properties that defines an environment for the objects within it. Contexts are created during the activation process for objects that are configured to require certain automatic services such synchronization, transactions, just-in-time (JIT) activation, security, and so on. Multiple objects can live inside a context.
Whenever a new object is created, the.NET Framework finds a compatible context or creates a new context for the object. After an object is placed in a context, it stays in it for life. Classes that can be bound to a context are called context-bound classes. When accessed from another context, these context-bound classes are referenced directly using a proxy. A call from an object in one context to an object in another context will go through a context proxy and be affected by the policy implemented by the combined context properties.
Type | Reason |
---|---|
Context |
Defines an environment for the objects that are resident inside it and for which a policy can be enforced. |
ContextAttribute |
Provides the default implementations of the System.Runtime.Remoting.Contexts.IContextAttribute and System.Runtime.Remoting.Contexts.IContextProperty interfaces. |
ContextProperty |
Holds the name/value pair of the property name and the object representing the property of a context. |
CrossContextDelegate |
Represents the method that will handle the requests of execution of some code in another context. |
IContextAttribute |
Identifies a context attribute. |
IContextProperty |
Gathers naming information from the context property and determines whether the new context is ok for the context property. |
IContextPropertyActivator |
Indicates that the implementing property is interested in participating in activation and might not have provided a message sink. |
IContributeClientContextSink |
Contributes an interception sink at the context boundary on the client end of a remoting call. |
IContributeDynamicSink |
Indicates that the implementing property will be registered at runtime through the System.Runtime.Remoting.Contexts.Context.RegisterDynamicProperty(System.Runtime.Remoting.Contexts.IDynamicProperty, ContextBoundObject, System.Runtime.Remoting.Contexts.Context) method. |
IContributeEnvoySink |
Contributes an envoy message sink on the client end. |
IContributeObjectSink |
Contributes an object-specific interception sink on the server end of a remoting call. |
IContributeServerContextSink |
Contributes an interception sink at the context boundary on the server end of a remoting call. |
IDynamicMessageSink |
Indicates that the implementing message sink will be provided by dynamically registered properties. |
IDynamicProperty |
Indicates that the implementing property should be registered at runtime through the System.Runtime.Remoting.Contexts.Context.RegisterDynamicProperty(System.Runtime.Remoting.Contexts.IDynamicProperty, ContextBoundObject, System.Runtime.Remoting.Contexts.Context) method. |
SynchronizationAttribute |
Enforces a synchronization domain for the current context and all contexts that share the same instance. |