ConfigurationElement.LockElements 属性

定义

获取被锁定的元素的集合。

public:
 property System::Configuration::ConfigurationLockCollection ^ LockElements { System::Configuration::ConfigurationLockCollection ^ get(); };
public System.Configuration.ConfigurationLockCollection LockElements { get; }
member this.LockElements : System.Configuration.ConfigurationLockCollection
Public ReadOnly Property LockElements As ConfigurationLockCollection

属性值

被锁定的元素的 ConfigurationLockCollection

示例

下面的示例演示如何使用 LockElements 属性。

// Show how to use LockElements
// It locks and unlocks the urls element.
static void LockElements()
{

    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 lockElements =
                myUrlsSection.LockElements;

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

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

            if (lockElements.Contains("urls"))
                // Remove the lock on the urls element.
                lockElements.Remove("urls");
            else
                // Add the lock on the urls element.
                lockElements.Add("urls");

            // Save the change.
            config.Save(ConfigurationSaveMode.Full);
        }
    }
    catch (ConfigurationErrorsException err)
    {
        Console.WriteLine("[LockElements: {0}]",
            err.ToString());
    }
}
' Show how to use LockElements
' It locks and unlocks the urls element.
Shared Sub LockElements()

    Try
        ' Get the current configuration file.
        Dim config _
        As System.Configuration.Configuration = _
        ConfigurationManager.OpenExeConfiguration( _
        ConfigurationUserLevel.None)

        ' Get the MyUrls section.
        Dim myUrlsSection As UrlsSection = _
        config.GetSection("MyUrls")

        If myUrlsSection Is Nothing Then
            Console.WriteLine("Failed to load UrlsSection.")
        Else
            ' Get MyUrls section LockElements collection.
            Dim lockElements _
            As ConfigurationLockCollection = _
            myUrlsSection.LockElements

            ' Get MyUrls section LockElements collection 
            ' enumerator.
            Dim lockElementEnum As IEnumerator = _
            lockElements.GetEnumerator()

            ' Position the collection index.
            lockElementEnum.MoveNext()

            If lockElements.Contains("urls") Then
                ' Remove the lock on the urls element.
                lockElements.Remove("urls")
            Else
                ' Add the lock on the urls element.
                lockElements.Add("urls")
            End If
            ' Save the change.
            config.Save(ConfigurationSaveMode.Full)
        End If

    Catch err As ConfigurationErrorsException
        Console.WriteLine("[LockElements: {0}]", _
        err.ToString())
    End Try

End Sub

注解

属性 LockElements 允许锁定指定的所有元素。

为此,请使用 Contains 方法,如下例中所述。

注意

属性 LockElements 允许阻止修改应用规则的元素的子配置元素。 如果要在元素本身及其子元素上放置常规锁,请使用 LockItem

适用于

另请参阅