ConfigurationLockCollection クラス
アセンブリ: System.Configuration (system.configuration.dll 内)


構成ファイルの構成セクションには、属性と要素の両方が含まれています。ConfigurationLockCollection コレクションは、構成セクションのロックされている属性用に存在し、ConfigurationElement クラスの LockAttributes プロパティを使用してアクセスします。もう 1 つの ConfigurationLockCollection コレクションは、構成セクションのロックされている要素用に存在し、ConfigurationElement クラスの LockElements プロパティを使用してアクセスします。

ConfigurationLockCollection 型を使用する方法を次のコード例に示します。
Imports System 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
#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(); } } }

System.Configuration.ConfigurationLockCollection


Windows 98, Windows 2000 SP4, Windows Millennium Edition, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。


- ConfigurationLockCollection クラスのページへのリンク