Defines an environment for the objects that are resident inside it and for which a policy can be enforced.
This API supports the product infrastructure and is not intended to be used directly from your code.
public ref class Context
[System.Runtime.InteropServices.ComVisible(true)] public class Context
type Context = class
Public Class Context
A context is an ordered sequence of properties that define an environment for the objects resident inside it. Contexts get created during the activation process for objects that are configured to require certain automatic services, such as synchronization, transactions, just-in-time activation, security, and so on. Multiple objects can live inside a context.
Classes are marked with an instance of the ContextAttribute class, which provides the usage rules. Whenever a new object is instantiated, the .NET Framework finds a compatible or creates a new instance of the Context class for the object. Once 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, such classes are referenced directly by using a proxy. Any 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 that the combined context properties enforce.
A new object's context is generally chosen based on meta-data attributes on the class. This mechanism is extensible through custom attributes. These are known as static-context properties, which are compiled into the class meta-data. Dynamic-context properties (also known as configuration properties) can be applied and configured by administrators.
For more information on contexts, see Boundaries: Processes and Application Domains.
Initializes a new instance of the Context class.
Gets the context ID for the current context.
Gets the array of the current context properties.
Gets the default context for the current application domain.
Allocates an unnamed data slot.
Allocates a named data slot.
Executes code in another context.
Determines whether the specified object is equal to the current object.(Inherited from Object)
Cleans up the backing objects for the nondefault contexts.
Frees a named data slot on all the contexts.
Freezes the context, making it impossible to add or remove context properties from the current context.
Retrieves the value from the specified slot on the current context.
Serves as the default hash function.(Inherited from Object)
Looks up a named data slot.
Returns a specific context property, specified by name.
Gets the Type of the current instance.(Inherited from Object)
Creates a shallow copy of the current Object.(Inherited from Object)
|RegisterDynamicProperty(IDynamicProperty, ContextBoundObject, Context)||
Registers a dynamic property implementing the IDynamicProperty interface with the remoting service.
Sets the data in the specified slot on the current context.
Sets a specific context property by name.
Returns a String class representation of the current context.
|UnregisterDynamicProperty(String, ContextBoundObject, Context)||
Unregisters a dynamic property implementing the IDynamicProperty interface.