NameValueConfigurationCollection 類別
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
包含 NameValueConfigurationElement 物件的集合。 此類別無法獲得繼承。
public ref class NameValueConfigurationCollection sealed : System::Configuration::ConfigurationElementCollection
[System.Configuration.ConfigurationCollection(typeof(System.Configuration.NameValueConfigurationElement))]
public sealed class NameValueConfigurationCollection : System.Configuration.ConfigurationElementCollection
[<System.Configuration.ConfigurationCollection(typeof(System.Configuration.NameValueConfigurationElement))>]
type NameValueConfigurationCollection = class
inherit ConfigurationElementCollection
Public NotInheritable Class NameValueConfigurationCollection
Inherits ConfigurationElementCollection
- 繼承
- 屬性
範例
下列程式代碼範例示範如何使用 NameValueConfigurationCollection 類型。
#region Using directives
using System;
using System.Configuration;
using System.Web.Configuration;
using System.Collections;
using System.Text;
#endregion
namespace Samples.AspNet
{
class UsingNameValueConfigurationCollection
{
static void Main(string[] args)
{
try
{
// Set the path of the config file.
// Make sure that you have a Web site on the
// same server called TestConfig.
string configPath = "/TestConfig";
// 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 NameValueConfigurationCollection object.
NameValueConfigurationCollection myNameValConfigCollection =
new NameValueConfigurationCollection();
foreach (PropertyInformation propertyItem in
configSection.ElementInformation.Properties)
{
// Assign domain name.
if (propertyItem.Name == "domain")
propertyItem.Value = "MyDomain";
if (propertyItem.Value != null)
{
// Enable SSL for cookie exchange.
if (propertyItem.Name == "cookieRequireSSL")
propertyItem.Value = true;
NameValueConfigurationElement nameValConfigElement =
new NameValueConfigurationElement
(propertyItem.Name.ToString(), propertyItem.Value.ToString());
// Add a NameValueConfigurationElement
// to the collection.
myNameValConfigCollection.Add(nameValConfigElement);
}
}
// Count property.
Console.WriteLine("Collection Count: {0}",
myNameValConfigCollection.Count);
// Item property.
Console.WriteLine("Value of property 'enabled': {0}",
myNameValConfigCollection["enabled"].Value);
// Display the contents of the collection.
foreach (NameValueConfigurationElement configItem
in myNameValConfigCollection)
{
Console.WriteLine();
Console.WriteLine("Configuration Details:");
Console.WriteLine("Name: {0}", configItem.Name);
Console.WriteLine("Value: {0}", configItem.Value);
}
// Assign the domain calue.
configSection.Domain = myNameValConfigCollection["domain"].Value;
// Assign the SSL required value.
if (myNameValConfigCollection["cookieRequireSSL"].Value == "true")
configSection.CookieRequireSSL = true;
// Remove domain from the collection.
NameValueConfigurationElement myConfigElement =
myNameValConfigCollection["domain"];
// Remove method.
myNameValConfigCollection.Remove(myConfigElement);
// Save changes to the configuration file.
// This modifies the Web.config of the TestConfig site.
config.Save(ConfigurationSaveMode.Minimal, true);
// Clear the collection.
myNameValConfigCollection.Clear();
}
catch (Exception e)
{
// Unknown error.
Console.WriteLine(e.ToString());
}
// Display and wait.
Console.ReadLine();
}
}
}
Imports System.Configuration
Imports System.Web
Imports System.Collections
Imports System.Text
Namespace Samples.AspNet
Class UsingNameValueConfigurationCollection
Public Shared Sub Main(ByVal args As String())
Try
' Set the path of the config file.
' Make sure that you have a Web site on the
' same server called TestConfig.
Dim configPath As String = "/TestConfig"
' Get the Web application configuration object.
Dim config As Configuration = _
System.Web.Configuration.WebConfigurationManager.OpenWebConfiguration(configPath)
' Get the section related object.
Dim configSection _
As System.Web.Configuration.AnonymousIdentificationSection = _
DirectCast(config.GetSection("system.web/anonymousIdentification"), _
System.Web.Configuration.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 NameValueConfigurationCollection object.
Dim myNameValConfigCollection As New NameValueConfigurationCollection()
For Each propertyItem As PropertyInformation In configSection.ElementInformation.Properties
' Assign domain name.
If propertyItem.Name = "domain" Then
propertyItem.Value = "MyDomain"
End If
If propertyItem.Value <> Nothing Then
' Enable SSL for cookie exchange.
If propertyItem.Name = "cookieRequireSSL" Then
propertyItem.Value = True
End If
Dim nameValConfigElement As New NameValueConfigurationElement(propertyItem.Name.ToString(), propertyItem.Value.ToString())
' Add a NameValueConfigurationElement
' to the collection.
myNameValConfigCollection.Add(nameValConfigElement)
End If
Next
' Count property.
Console.WriteLine("Collection Count: {0}", myNameValConfigCollection.Count)
' Item property.
Console.WriteLine("Value of property 'enabled': {0}", myNameValConfigCollection("enabled").Value)
' Display the contents of the collection.
For Each configItem As NameValueConfigurationElement In myNameValConfigCollection
Console.WriteLine()
Console.WriteLine("Configuration Details:")
Console.WriteLine("Name: {0}", configItem.Name)
Console.WriteLine("Value: {0}", configItem.Value)
Next
' Assign the domain calue.
configSection.Domain = myNameValConfigCollection("domain").Value
' Assign the SSL required value.
If myNameValConfigCollection("cookieRequireSSL").Value = "true" Then
configSection.CookieRequireSSL = True
End If
' Remove domain from the collection.
Dim myConfigElement As NameValueConfigurationElement = myNameValConfigCollection("domain")
' Remove method.
myNameValConfigCollection.Remove(myConfigElement)
' Save changes to the configuration file.
' This modifies the Web.config of the TestConfig site.
config.Save(ConfigurationSaveMode.Minimal, True)
' Clear the collection.
myNameValConfigCollection.Clear()
Catch e As Exception
' Unknown error.
Console.WriteLine(e.ToString())
End Try
' Display and wait.
Console.ReadLine()
End Sub
End Class
End Namespace
備註
類別 NameValueConfigurationCollection 可讓您以程式設計方式存取 物件的集合 NameValueConfigurationElement 。
建構函式
NameValueConfigurationCollection() |
初始化 NameValueConfigurationCollection 類別的新執行個體。 |
屬性
方法
明確介面實作
ICollection.CopyTo(Array, Int32) |
將 ConfigurationElementCollection 複製至陣列。 (繼承來源 ConfigurationElementCollection) |
擴充方法
Cast<TResult>(IEnumerable) |
將 IEnumerable 的項目轉換成指定的型別。 |
OfType<TResult>(IEnumerable) |
根據指定的型別來篩選 IEnumerable 的項目。 |
AsParallel(IEnumerable) |
啟用查詢的平行化作業。 |
AsQueryable(IEnumerable) |
將 IEnumerable 轉換成 IQueryable。 |