ConfigurationElement.LockAttributes Właściwość

Definicja

Pobiera kolekcję zablokowanych atrybutów.

C#
public System.Configuration.ConfigurationLockCollection LockAttributes { get; }

Wartość właściwości

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

Przykłady

W poniższym przykładzie pokazano, jak używać LockAttributes właściwości .

C#
// Show how to use LockAttributes.
// It locks and unlocks all the urls elements.
static void LockAttributes()
{

    try
    {
        // Get the 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 the current element.
                ConfigurationElement element =
                    myUrlsSection.Urls[i];

                // Get the lock attributes collection of 
                // the current element.
                ConfigurationLockCollection lockAttributes =
                    element.LockAttributes;

                // Add or remove the lock on the attributes.
                if (lockAttributes.Contains("name"))
                    lockAttributes.Remove("name");
                else
                    lockAttributes.Add("name");

                if (lockAttributes.Contains("url"))
                    lockAttributes.Remove("url");
                else
                    lockAttributes.Add("url");

                if (lockAttributes.Contains("port"))
                    lockAttributes.Remove("port");
                else
                    lockAttributes.Add("port");

                // Get the locket attributes.
                string lockedAttributes =
                    lockAttributes.AttributeList;

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

                i += 1;

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

Uwagi

Właściwość LockAttributes umożliwia zablokowanie wszystkich atrybutów, które określisz.

W tym celu należy użyć Contains metody , jak wyjaśniono w sekcji Przykład.

Uwaga

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

Uwagi dotyczące dziedziczenia

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

Dotyczy

Produkt Wersje
.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, 4.7.1, 4.7.2, 4.8, 4.8.1
Windows Desktop 3.0, 3.1, 5, 6, 7, 8, 9

Zobacz też