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。 |