Compartilhar via


ConfigurationLockCollection Classe

Definição

Contém uma coleção de objetos de configuração bloqueados. Essa classe não pode ser herdada.

public ref class ConfigurationLockCollection sealed : System::Collections::ICollection
public sealed class ConfigurationLockCollection : System.Collections.ICollection
type ConfigurationLockCollection = class
    interface ICollection
    interface IEnumerable
type ConfigurationLockCollection = class
    interface IEnumerable
    interface ICollection
Public NotInheritable Class ConfigurationLockCollection
Implements ICollection
Herança
ConfigurationLockCollection
Implementações

Exemplos

O exemplo de código a seguir demonstra como usar o ConfigurationLockCollection tipo .

#region Using directives

using System;
using System.Configuration;
using System.Web.Configuration;
using System.Collections;
using System.Text;

#endregion

namespace Samples.Aspnet.SystemWebConfiguration
{
  class UsingConfigurationLockCollection
  {
    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.
        AnonymousIdentificationSection configSection =
          (AnonymousIdentificationSection)config.GetSection
          ("system.web/anonymousIdentification");

        // Display title and info.
        Console.WriteLine("Configuration Info");
        Console.WriteLine();

        // Display Config details.
        Console.WriteLine("File Path: {0}",
          config.FilePath);
        Console.WriteLine("Section Path: {0}",
          configSection.SectionInformation.Name);
        Console.WriteLine();

        // Create a ConfigurationLockCollection object.
        ConfigurationLockCollection lockedAttribList;
        lockedAttribList = configSection.LockAttributes;

        // Add an attribute to the lock collection.
        if (!lockedAttribList.Contains("enabled"))
        {
          lockedAttribList.Add("enabled");
        }
        if (!lockedAttribList.Contains("cookieless"))
        {
          lockedAttribList.Add("cookieless");
        }

        // Count property.
        Console.WriteLine("Collection Count: {0}",
         lockedAttribList.Count);

        // AttributeList method.
        Console.WriteLine("AttributeList: {0}",
         lockedAttribList.AttributeList);

        // Contains method.
        Console.WriteLine("Contains 'enabled': {0}",
         lockedAttribList.Contains("enabled"));

        // HasParentElements property.
        Console.WriteLine("HasParentElements: {0}",
         lockedAttribList.HasParentElements);

        // IsModified property.
        Console.WriteLine("IsModified: {0}",
         lockedAttribList.IsModified);

        // IsReadOnly method. 
        Console.WriteLine("IsReadOnly: {0}",
         lockedAttribList.IsReadOnly("enabled"));

        // Remove a configuration object 
        // from the collection.
        lockedAttribList.Remove("cookieless");

        // Clear the collection.
        lockedAttribList.Clear();

        // Create an ArrayList to contain
        // the property items of the configuration
        // section.
        ArrayList configPropertyAL = new ArrayList(lockedAttribList.Count);
        foreach (PropertyInformation propertyItem in
          configSection.ElementInformation.Properties)
        {
          configPropertyAL.Add(propertyItem.Name.ToString());
        }
        // Copy the elements of the ArrayList to a string array.
        String[] myArr = (String[])configPropertyAL.ToArray(typeof(string));
        // Create as a comma delimited list.
        string propList = string.Join(",", myArr);
        // Lock the items in the list.
        lockedAttribList.SetFromList(propList);
      }

      catch (Exception e)
      {
        // Unknown error.
        Console.WriteLine(e.ToString());
      }

      // Display and wait.
      Console.ReadLine();
    }
  }
}
Imports System.Configuration
Imports System.Web.Configuration
Imports System.Collections
Imports System.Text

Namespace Samples.Aspnet.SystemWebConfiguration
  Class UsingConfigurationLockCollection
    Public Shared Sub Main()
      Try
        ' Set the path of the config file.
        Dim configPath As String = ""

        ' Get the Web application configuration object.
        Dim config As System.Configuration.Configuration = _
         WebConfigurationManager.OpenWebConfiguration(configPath)

        ' Get the section related object.
        Dim configSection As _
        AnonymousIdentificationSection = _
         CType(config.GetSection("system.web/anonymousIdentification"), _
         AnonymousIdentificationSection)

        ' Display title and info.
        Console.WriteLine("Configuration Info")
        Console.WriteLine()

        ' Display Config details.
        Console.WriteLine("File Path: {0}", _
          config.FilePath)
        Console.WriteLine("Section Path: {0}", _
          configSection.SectionInformation.Name)
        Console.WriteLine()

        ' Create a ConfigurationLockCollection object.
        Dim lockedAttribList As ConfigurationLockCollection
        lockedAttribList = configSection.LockAttributes

        ' Add an attribute to the lock collection.
        If Not (lockedAttribList.Contains("enabled")) Then
          lockedAttribList.Add("enabled")
        End If
        If Not (lockedAttribList.Contains("cookieless")) Then
          lockedAttribList.Add("cookieless")
        End If

        ' Count property.
        Console.WriteLine("Collection Count: {0}", _
         lockedAttribList.Count)

        ' AttributeList method.
        Console.WriteLine("AttributeList: {0}", _
         lockedAttribList.AttributeList)

        ' Contains method.
        Console.WriteLine("Contains 'enabled': {0}", _
         lockedAttribList.Contains("enabled"))

        ' HasParentElements property.
        Console.WriteLine("HasParentElements: {0}", _
         lockedAttribList.HasParentElements)

        ' IsModified property.
        Console.WriteLine("IsModified: {0}", _
         lockedAttribList.IsModified)

        ' IsReadOnly method. 
        Console.WriteLine("IsReadOnly: {0}", _
         lockedAttribList.IsReadOnly("enabled"))

        ' Remove a configuration object 
        ' from the collection.
        lockedAttribList.Remove("cookieless")

        ' Clear the collection.
        lockedAttribList.Clear()

        ' Create an ArrayList to contain
        ' the property items of the configuration
        ' section.
        Dim configPropertyAL As ArrayList = _
         New ArrayList(lockedAttribList.Count)
        For Each propertyItem As _
         PropertyInformation In _
         configSection.ElementInformation.Properties
          configPropertyAL.Add(propertyItem.Name.ToString())
        Next
        ' Copy the elements of the ArrayList to a string array.
        Dim myArr As [String]() = _
        CType(configPropertyAL.ToArray(GetType(String)), [String]())
        ' Create as a comma delimited list.
        Dim propList As String = String.Join(",", myArr)
        ' Lock the items in the list.
        lockedAttribList.SetFromList(propList)

      Catch e As Exception
        ' Validation failed.
        Console.WriteLine("Error: {0}", _
          e.Message.ToString())
      End Try

      ' Display and wait.
      Console.ReadLine()
    End Sub
  End Class
End Namespace

Comentários

Em um arquivo de configuração, uma seção de configuração contém atributos e elementos. Existe uma ConfigurationLockCollection coleção para os atributos bloqueados de uma seção de configuração e é acessada por meio da LockAttributes propriedade da ConfigurationElement classe . Outra ConfigurationLockCollection coleção existe para os elementos bloqueados de uma seção de configuração e é acessada por meio da LockElements propriedade da ConfigurationElement classe .

Propriedades

AttributeList

Obtém uma lista de objetos de configuração contidos na coleção.

Count

Obtém o número de objetos de configuração bloqueados contidos na coleção.

HasParentElements

Obtém um valor que especifica se a coleção de objetos bloqueados tem elementos pai.

IsModified

Obtém um valor que especifica se a coleção foi modificada.

IsSynchronized

Obtém um valor que especifica se a coleção está sincronizada.

SyncRoot

Obtém um objeto usado para sincronizar o acesso a essa coleção ConfigurationLockCollection.

Métodos

Add(String)

Bloqueia um objeto de configuração ao adicioná-lo à coleção.

Clear()

Limpa todos os objetos de configuração da coleção.

Contains(String)

Verifica se um objeto de configuração específico está bloqueado.

CopyTo(String[], Int32)

Copia toda a coleção ConfigurationLockCollection para um Array unidimensional compatível, começando no índice especificado da matriz de destino.

Equals(Object)

Determina se o objeto especificado é igual ao objeto atual.

(Herdado de Object)
GetEnumerator()

Obtém um objeto IEnumerator, que é usado para iterar por esta coleção ConfigurationLockCollection.

GetHashCode()

Serve como a função de hash padrão.

(Herdado de Object)
GetType()

Obtém o Type da instância atual.

(Herdado de Object)
IsReadOnly(String)

Verifica se um objeto de configuração específico é somente leitura.

MemberwiseClone()

Cria uma cópia superficial do Object atual.

(Herdado de Object)
Remove(String)

Remove um objeto de configuração da coleção.

SetFromList(String)

Bloqueia um conjunto de objetos de configuração com base na lista fornecida.

ToString()

Retorna uma cadeia de caracteres que representa o objeto atual.

(Herdado de Object)

Implantações explícitas de interface

ICollection.CopyTo(Array, Int32)

Copia toda a coleção ConfigurationLockCollection para um Array unidimensional compatível, começando no índice especificado da matriz de destino.

Métodos de Extensão

Cast<TResult>(IEnumerable)

Converte os elementos de um IEnumerable para o tipo especificado.

OfType<TResult>(IEnumerable)

Filtra os elementos de um IEnumerable com base em um tipo especificado.

AsParallel(IEnumerable)

Habilita a paralelização de uma consulta.

AsQueryable(IEnumerable)

Converte um IEnumerable em um IQueryable.

Aplica-se a

Confira também