CommaDelimitedStringCollection Class

Represents a collection of string elements separated by commas. This class cannot be inherited.

System.Object
  System.Collections.Specialized.StringCollection
    System.Configuration.CommaDelimitedStringCollection

Namespace:  System.Configuration
Assembly:  System.Configuration (in System.Configuration.dll)

public sealed class CommaDelimitedStringCollection : StringCollection

The CommaDelimitedStringCollection type exposes the following members.

  NameDescription
Public methodCommaDelimitedStringCollectionCreates a new instance of the CommaDelimitedStringCollection class.
Top

  NameDescription
Public propertyCountGets the number of strings contained in the StringCollection. (Inherited from StringCollection.)
Public propertyIsModifiedGets a value that specifies whether the collection has been modified.
Public propertyIsReadOnlyGets a value indicating whether the collection object is read-only.
Public propertyIsSynchronizedGets a value indicating whether access to the StringCollection is synchronized (thread safe). (Inherited from StringCollection.)
Public propertyItemGets or sets a string element in the collection based on the index.
Public propertySyncRootGets an object that can be used to synchronize access to the StringCollection. (Inherited from StringCollection.)
Top

  NameDescription
Public methodAddAdds a string to the comma-delimited collection.
Public methodAddRangeAdds all the strings in a string array to the collection.
Public methodClearClears the collection.
Public methodCloneCreates a copy of the collection.
Public methodContainsDetermines whether the specified string is in the StringCollection. (Inherited from StringCollection.)
Public methodCopyToCopies the entire StringCollection values to a one-dimensional array of strings, starting at the specified index of the target array. (Inherited from StringCollection.)
Public methodEquals(Object)Determines whether the specified Object is equal to the current Object. (Inherited from Object.)
Protected methodFinalizeAllows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. (Inherited from Object.)
Public methodGetEnumeratorReturns a StringEnumerator that iterates through the StringCollection. (Inherited from StringCollection.)
Public methodGetHashCodeServes as a hash function for a particular type. (Inherited from Object.)
Public methodGetTypeGets the Type of the current instance. (Inherited from Object.)
Public methodIndexOfSearches for the specified string and returns the zero-based index of the first occurrence within the StringCollection. (Inherited from StringCollection.)
Public methodInsertAdds a string element to the collection at the specified index.
Protected methodMemberwiseCloneCreates a shallow copy of the current Object. (Inherited from Object.)
Public methodRemoveRemoves a string element from the collection.
Public methodRemoveAtRemoves the string at the specified index of the StringCollection. (Inherited from StringCollection.)
Public methodSetReadOnlySets the collection object to read-only.
Public methodToStringReturns a string representation of the object. (Overrides Object.ToString().)
Top

  NameDescription
Explicit interface implemetationPrivate methodICollection.CopyToCopies the entire StringCollection to a compatible one-dimensional Array, starting at the specified index of the target array. (Inherited from StringCollection.)
Explicit interface implemetationPrivate methodIEnumerable.GetEnumeratorReturns a IEnumerator that iterates through the StringCollection. (Inherited from StringCollection.)
Explicit interface implemetationPrivate methodIList.AddAdds an object to the end of the StringCollection. (Inherited from StringCollection.)
Explicit interface implemetationPrivate methodIList.ContainsDetermines whether an element is in the StringCollection. (Inherited from StringCollection.)
Explicit interface implemetationPrivate methodIList.IndexOfSearches for the specified Object and returns the zero-based index of the first occurrence within the entire StringCollection. (Inherited from StringCollection.)
Explicit interface implemetationPrivate methodIList.InsertInserts an element into the StringCollection at the specified index. (Inherited from StringCollection.)
Explicit interface implemetationPrivate propertyIList.IsFixedSizeGets a value indicating whether the StringCollection object has a fixed size. (Inherited from StringCollection.)
Explicit interface implemetationPrivate propertyIList.IsReadOnlyGets a value indicating whether the StringCollection object is read-only. (Inherited from StringCollection.)
Explicit interface implemetationPrivate propertyIList.ItemGets or sets the element at the specified index. (Inherited from StringCollection.)
Explicit interface implemetationPrivate methodIList.RemoveRemoves the first occurrence of a specific object from the StringCollection. (Inherited from StringCollection.)
Top

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.


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();
    }
  }
}


.NET Framework

Supported in: 4, 3.5, 3.0, 2.0

.NET Framework Client Profile

Supported in: 4, 3.5 SP1

Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows XP SP2 x64 Edition, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.
Was this page helpful?
(1500 characters remaining)
Thank you for your feedback

Community Additions

ADD
Show:
© 2015 Microsoft