ContextInformation Class
Encapsulates the context information that is associated with a ConfigurationElement object. This class cannot be inherited.
Assembly: System.Configuration (in System.Configuration.dll)
| Name | Description | |
|---|---|---|
![]() | HostingContext | Gets the context of the environment where the configuration property is being evaluated. |
![]() | IsMachineLevel | Gets a value specifying whether the configuration property is being evaluated at the machine configuration level. |
| Name | Description | |
|---|---|---|
![]() | Equals(Object) | Determines whether the specified object is equal to the current object.(Inherited from Object.) |
![]() | GetHashCode() | Serves as the default hash function. (Inherited from Object.) |
![]() | GetSection(String) | Provides an object containing configuration-section information based on the specified section name. |
![]() | GetType() | |
![]() | ToString() | Returns a string that represents the current object.(Inherited from Object.) |
The ContextInformation object provides environment details related to an element of the configuration. For instance, you can use the IsMachineLevel property to determine whether a ConfigurationElement was set in Machine.config, or you can determine which hierarchy a ConfigurationElement belongs to by using the HostingContext property.
The following code example demonstrates how to use the ContextInformation type.
#region Using directives using System; using System.Collections.Generic; using System.Text; using System.Configuration; using System.Web; using System.Web.Configuration; #endregion namespace Samples.Aspnet.ConfigurationSample { class UsingContextInformation { static void Main(string[] args) { try { // Set the path of the config file. string configPath = ""; // Get the Web application configuration object. Configuration config = WebConfigurationManager.OpenWebConfiguration(configPath); // Get the section related object. HealthMonitoringSection configSection = (HealthMonitoringSection)config.GetSection("system.web/healthMonitoring"); // Display title and info. Console.WriteLine("ASP.NET Configuration Info"); Console.WriteLine(); // Display Config details. Console.WriteLine("File Path: {0}", config.FilePath); Console.WriteLine("Section Path: {0}", configSection.SectionInformation.Name); // IsMachineLevel property. Console.WriteLine("IsMachineLevel: {0}", config.EvaluationContext.IsMachineLevel); // Create an object based on HostingContext. WebContext myWC = (WebContext)config.EvaluationContext.HostingContext; // Use the WebContext object to determine // the ApplicationLevel. Console.WriteLine("ApplicationLevel: {0}", myWC.ApplicationLevel); } catch (Exception e) { // Error. Console.WriteLine(e.ToString()); } // Display and wait. Console.ReadLine(); } } }
Available since 2.0
Any public static ( Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

