Represents a collection of string elements separated by commas. This class cannot be inherited.
Namespace:
System.Configuration
Assembly:
System.Configuration (in System.Configuration.dll)
Visual Basic (Declaration)
Public NotInheritable Class CommaDelimitedStringCollection _
Inherits StringCollection
Dim instance As CommaDelimitedStringCollection
public sealed class CommaDelimitedStringCollection : StringCollection
public ref class CommaDelimitedStringCollection sealed : public StringCollection
public final class CommaDelimitedStringCollection extends StringCollection
This class represents a string collection that is serialized as a comma-delimited list of string elements.
The following code example demonstrates how to use the CommaDelimitedStringCollection type.
Imports System
Imports System.Collections.Generic
Imports System.Text
Imports System.Configuration
Imports System.Collections
Imports System.Web
Imports System.Web.Configuration
Imports System.Collections.Specialized
Namespace Samples.AspNet.Config
Class CommaDelimitedStrCollection
Shared Sub Main(ByVal args() As String)
' Display title and info.
Console.WriteLine("ASP.NET Configuration Info")
Console.WriteLine("Type: CommaDelimitedStringCollection")
Console.WriteLine()
' Set the path of the config file.
Dim configPath As String = "/aspnet"
' Get the Web application configuration object.
Dim config As Configuration = _
WebConfigurationManager.OpenWebConfiguration(configPath)
' Get the section related object.
Dim configSection As AuthorizationSection = _
CType(config.GetSection("system.web/authorization"), AuthorizationSection)
' Get the authorization rule collection.
Dim authorizationRuleCollection As AuthorizationRuleCollection = _
configSection.Rules()
' Create a CommaDelimitedStringCollection object.
Dim myStrCollection As CommaDelimitedStringCollection = _
New CommaDelimitedStringCollection()
Dim i As Integer
For i = 0 To authorizationRuleCollection.Count - 1 Step i + 1
If authorizationRuleCollection.Get(i).Action.ToString().ToLower() _
= "allow" Then
' Add values to the CommaDelimitedStringCollection object.
myStrCollection.AddRange( _
authorizationRuleCollection.Get(i).Users.ToString().Split( _
",".ToCharArray()))
End If
Next
Console.WriteLine("Allowed Users: {0}", _
myStrCollection.ToString())
' Count the elements in the collection.
Console.WriteLine("Allowed User Count: {0}", _
myStrCollection.Count)
' Call the Contains method.
Console.WriteLine("Contains 'userName1': {0}", _
myStrCollection.Contains("userName1"))
' Determine the index of an element
' in the collection.
Console.WriteLine("IndexOf 'userName0': {0}", _
myStrCollection.IndexOf("userName0"))
' Call IsModified.
Console.WriteLine("IsModified: {0}", _
myStrCollection.IsModified)
' Call IsReadyOnly.
Console.WriteLine("IsReadOnly: {0}", _
myStrCollection.IsReadOnly)
Console.WriteLine()
Console.WriteLine("Add a user name to the collection.")
' Insert a new element in the collection.
myStrCollection.Insert(myStrCollection.Count, "userNameX")
Console.WriteLine("Collection Value: {0}", _
myStrCollection.ToString())
Console.WriteLine()
Console.WriteLine("Remove a user name from the collection.")
' Remove an element of the collection.
myStrCollection.Remove("userNameX")
Console.WriteLine("Collection Value: {0}", _
myStrCollection.ToString())
' Display and wait
Console.ReadLine()
End Sub
End Class
End Namespace
using System;
using System.Collections.Generic;
using System.Text;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Configuration;
using System.Collections.Specialized;
namespace Samples.AspNet.Config
{
class CommaDelimitedStrCollection
{
static void Main(string[] args)
{
// Display title and info.
Console.WriteLine("ASP.NET Configuration Info");
Console.WriteLine("Type: CommaDelimitedStringCollection");
Console.WriteLine();
// Set the path of the config file.
string configPath = "/aspnet";
// Get the Web application configuration object.
Configuration config =
WebConfigurationManager.OpenWebConfiguration(configPath);
// Get the section related object.
AuthorizationSection configSection =
(AuthorizationSection)config.GetSection("system.web/authorization");
// Get the authorization rule collection.
AuthorizationRuleCollection authorizationRuleCollection =
configSection.Rules;
// Create a CommaDelimitedStringCollection object.
CommaDelimitedStringCollection myStrCollection =
new CommaDelimitedStringCollection();
for (int i = 0; i < authorizationRuleCollection.Count; i++)
{
if (authorizationRuleCollection.Get(i).Action.ToString().ToLower()
== "allow")
{
// Add values to the CommaDelimitedStringCollection object.
myStrCollection.AddRange(
authorizationRuleCollection.Get(i).Users.ToString().Split(
",".ToCharArray()));
}
}
Console.WriteLine("Allowed Users: {0}",
myStrCollection.ToString());
// Count the elements in the collection.
Console.WriteLine("Allowed User Count: {0}",
myStrCollection.Count);
// Call the Contains method.
Console.WriteLine("Contains 'userName1': {0}",
myStrCollection.Contains("userName1"));
// Determine the index of an element
// in the collection.
Console.WriteLine("IndexOf 'userName0': {0}",
myStrCollection.IndexOf("userName0"));
// Call IsModified.
Console.WriteLine("IsModified: {0}",
myStrCollection.IsModified);
// Call IsReadyOnly.
Console.WriteLine("IsReadOnly: {0}",
myStrCollection.IsReadOnly);
Console.WriteLine();
Console.WriteLine("Add a user name to the collection.");
// Insert a new element in the collection.
myStrCollection.Insert(myStrCollection.Count, "userNameX");
Console.WriteLine("Collection Value: {0}",
myStrCollection.ToString());
Console.WriteLine();
Console.WriteLine("Remove a user name from the collection.");
// Remove an element of the collection.
myStrCollection.Remove("userNameX");
Console.WriteLine("Collection Value: {0}",
myStrCollection.ToString());
// Display and wait
Console.ReadLine();
}
}
}
System..::.Object
System.Collections.Specialized..::.StringCollection
System.Configuration..::.CommaDelimitedStringCollection
Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.
Windows 7, Windows Vista, Windows XP SP2, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP Starter Edition, Windows Server 2008 R2, Windows Server 2008, Windows Server 2003, Windows Server 2000 SP4, Windows Millennium Edition, Windows 98
The .NET Framework and .NET Compact Framework do not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.
.NET Framework
Supported in: 3.5, 3.0, 2.0
Reference