Udostępnij za pośrednictwem


ConfigurationElement.LockAllAttributesExcept Właściwość

Definicja

Pobiera kolekcję zablokowanych atrybutów.

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

Wartość właściwości

Atrybuty ConfigurationLockCollection zablokowane (właściwości) elementu.

Przykłady

W poniższym przykładzie pokazano, jak używać polecenia LockAllAttributesExcept.

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

    try
    {
        // Get current 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
        {

            IEnumerator elemEnum =
                 myUrlsSection.Urls.GetEnumerator();

            int i = 0;
            while (elemEnum.MoveNext())
            {

                // Get current element.
                ConfigurationElement element =
                    myUrlsSection.Urls[i];

                // Get current element lock all attributes.
                ConfigurationLockCollection lockAllAttributesExcept =
                    element.LockAllAttributesExcept;

                // Add or remove the lock on all attributes 
                // except port.
                if (lockAllAttributesExcept.Contains("port"))
                    lockAllAttributesExcept.Remove("port");
                else
                    lockAllAttributesExcept.Add("port");

                string lockedAttributes =
                    lockAllAttributesExcept.AttributeList;

                Console.WriteLine(
                    "Element {0} Locked attributes list: {1}",
                    i.ToString(), lockedAttributes);

                i += 1;

                config.Save(ConfigurationSaveMode.Full);
            }
        }
    }
    catch (ConfigurationErrorsException e)
    {
        Console.WriteLine(
            "[LockAllAttributesExcept: {0}]",
            e.ToString());
    }
}
' Show how to use LockAllAttributesExcept.
' It locks and unlocks all urls elements 
' except the port.
Shared Sub LockAllAttributesExcept()

    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

            Dim elemEnum As IEnumerator = _
            myUrlsSection.Urls.GetEnumerator()

            Dim i As Integer = 0
            While elemEnum.MoveNext()

                ' Get current element.
                Dim element _
                As ConfigurationElement = _
                myUrlsSection.Urls(i)

                ' Get current element lock all attributes.
                Dim lockAllAttributesExcept _
                As ConfigurationLockCollection = _
                element.LockAllAttributesExcept

                ' Add or remove the lock on all attributes 
                ' except port.
                If lockAllAttributesExcept.Contains("port") Then
                    lockAllAttributesExcept.Remove("port")
                Else
                    lockAllAttributesExcept.Add("port")
                End If

                Dim lockedAttributes As String = _
                lockAllAttributesExcept.AttributeList()

                Console.WriteLine("Element {0} Locked attributes list: {1}", _
                i.ToString(), lockedAttributes)

                i += 1

                config.Save(ConfigurationSaveMode.Full)
            End While
        End If


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

End Sub

Uwagi

Właściwość LockAllAttributesExcept umożliwia zablokowanie wszystkich atrybutów jednocześnie z wyjątkiem określonego atrybutu. W tym celu należy użyć Contains metody , jak wyjaśniono w sekcji Przykład.

Uwaga

Właściwość LockAllAttributesExcept umożliwia zapobieganie modyfikowaniu podrzędnych elementów konfiguracji elementu, do którego jest stosowana reguła. Użyj właściwości , LockItem jeśli chcesz umieścić ogólną blokadę na samym elemecie nadrzędnym i jego elementach podrzędnych.

Uwagi dotyczące dziedziczenia

Jeśli używasz LockAllAttributesExcept właściwości i LockAttributes w tym samym czasie, ma zastosowanie najbardziej restrykcyjna reguła.

Dotyczy

Zobacz też