ConfigurationElement.LockAllElementsExcept Property

Definition

Gets the collection of locked elements.

public System.Configuration.ConfigurationLockCollection LockAllElementsExcept { get; }

Property Value

The ConfigurationLockCollection of locked elements.

Examples

The following example shows how to use the LockAllElementsExcept property.

// Show how to use LockAllElementsExcept.
// It locks and unlocks all the MyUrls elements 
// except urls.
static void LockAllElementsExcept()
{

    try
    {
        // Get the configuration file.
        System.Configuration.Configuration config =
            ConfigurationManager.OpenExeConfiguration(
            ConfigurationUserLevel.None);

        // Get the MyUrls section.
        UrlsSection myUrlsSection =
            config.GetSection("MyUrls") as UrlsSection;

        if (myUrlsSection == null)
        {
            Console.WriteLine("Failed to load UrlsSection.");
        }
        else
        {

            // Get MyUrls section LockElements collection.
            ConfigurationLockCollection lockElementsExcept =
                myUrlsSection.LockAllElementsExcept;

            // Get MyUrls section LockElements collection 
            // enumerator.
            IEnumerator lockElementEnum =
                 lockElementsExcept.GetEnumerator();

            // Position the collection index.
            lockElementEnum.MoveNext();

            if (lockElementsExcept.Contains("urls"))
                // Remove the lock on all the ther elements.
                lockElementsExcept.Remove("urls");
            else
                // Add the lock on all the other elements 
                // but urls element.
                lockElementsExcept.Add("urls");

            config.Save(ConfigurationSaveMode.Full);
        }
    }
    catch (ConfigurationErrorsException err)
    {
        Console.WriteLine("[LockAllElementsExcept: {0}]",
            err.ToString());
    }
}

Remarks

The LockAllElementsExcept property allows you to lock all the elements at once, except for the one you specify.

Notitie

The LockAllElementsExcept property allows you to prevent the child configuration elements of the element to which you apply the rule from being modified. Use the LockItem property if you want to put a general lock on the element itself and its child elements.

Applies to

Product Versies
.NET 8 (package-provided), 9 (package-provided)
.NET Framework 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7 (package-provided), 4.7, 4.7.1 (package-provided), 4.7.1, 4.7.2 (package-provided), 4.7.2, 4.8 (package-provided), 4.8, 4.8.1
.NET Standard 2.0 (package-provided)
Windows Desktop 3.0, 3.1, 5, 6, 7, 8, 9

See also