CommaDelimitedStringCollection 类

定义

表示用逗号分隔的字符串元素的集合。Represents a collection of string elements separated by commas. 此类不能被继承。This class cannot be inherited.

public ref class CommaDelimitedStringCollection sealed : System::Collections::Specialized::StringCollection
public sealed class CommaDelimitedStringCollection : System.Collections.Specialized.StringCollection
type CommaDelimitedStringCollection = class
    inherit StringCollection
Public NotInheritable Class CommaDelimitedStringCollection
Inherits StringCollection
继承
CommaDelimitedStringCollection

示例

下面的代码示例演示如何使用 CommaDelimitedStringCollection 类型。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();
    }
  }
}
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

注解

此类表示序列化为以逗号分隔的字符串元素列表的字符串集合。This class represents a string collection that is serialized as a comma-delimited list of string elements.

构造函数

CommaDelimitedStringCollection()

创建 CommaDelimitedStringCollection 类的新实例。Creates a new instance of the CommaDelimitedStringCollection class.

属性

Count

获取 StringCollection 中包含的字符串的数目。Gets the number of strings contained in the StringCollection.

(继承自 StringCollection)
IsModified

获取一个值,该值指示集合是否已修改。Gets a value that specifies whether the collection has been modified.

IsReadOnly

获取一个值,该值指示集合对象是否为只读。Gets a value indicating whether the collection object is read-only.

IsSynchronized

获取一个值,该值指示是否同步对 StringCollection 的访问(线程安全)。Gets a value indicating whether access to the StringCollection is synchronized (thread safe).

(继承自 StringCollection)
Item[Int32]

根据索引获取或设置集合中的字符串元素。Gets or sets a string element in the collection based on the index.

SyncRoot

获取可用于同步对 StringCollection 的访问的对象。Gets an object that can be used to synchronize access to the StringCollection.

(继承自 StringCollection)

方法

Add(String)

向以逗号分隔的集合添加一个字符串。Adds a string to the comma-delimited collection.

AddRange(String[])

将字符串数组中的所有字符串添加到集合中。Adds all the strings in a string array to the collection.

Clear()

清除集合。Clears the collection.

Clone()

创建集合的一个副本。Creates a copy of the collection.

Contains(String)

确定指定的字符串是否在 StringCollection 中。Determines whether the specified string is in the StringCollection.

(继承自 StringCollection)
CopyTo(String[], Int32)

从目标数组的指定索引处开始,将全部 StringCollection 值复制到一维字符串数组中。Copies the entire StringCollection values to a one-dimensional array of strings, starting at the specified index of the target array.

(继承自 StringCollection)
Equals(Object)

确定指定对象是否等于当前对象。Determines whether the specified object is equal to the current object.

(继承自 Object)
GetEnumerator()

返回循环访问 StringEnumeratorStringCollectionReturns a StringEnumerator that iterates through the StringCollection.

(继承自 StringCollection)
GetHashCode()

作为默认哈希函数。Serves as the default hash function.

(继承自 Object)
GetType()

获取当前实例的 TypeGets the Type of the current instance.

(继承自 Object)
IndexOf(String)

搜索指定的字符串并返回 StringCollection 内的第一个匹配项的从零开始的索引。Searches for the specified string and returns the zero-based index of the first occurrence within the StringCollection.

(继承自 StringCollection)
Insert(Int32, String)

将一个字符串元素添加到集合中的指定索引位置。Adds a string element to the collection at the specified index.

MemberwiseClone()

创建当前 Object 的浅表副本。Creates a shallow copy of the current Object.

(继承自 Object)
Remove(String)

从集合中移除一个字符串元素。Removes a string element from the collection.

RemoveAt(Int32)

移除 StringCollection 的指定索引处的字符串。Removes the string at the specified index of the StringCollection.

(继承自 StringCollection)
SetReadOnly()

将集合对象设置为只读。Sets the collection object to read-only.

ToString()

返回对象的字符串表示形式。Returns a string representation of the object.

显式接口实现

ICollection.CopyTo(Array, Int32)

从目标数组的指定索引处开始将整个 StringCollection 复制到兼容的一维 ArrayCopies the entire StringCollection to a compatible one-dimensional Array, starting at the specified index of the target array.

(继承自 StringCollection)
IEnumerable.GetEnumerator()

返回循环访问 IEnumeratorStringCollectionReturns a IEnumerator that iterates through the StringCollection.

(继承自 StringCollection)
IList.Add(Object)

将一个对象添加到 StringCollection 的末尾。Adds an object to the end of the StringCollection.

(继承自 StringCollection)
IList.Contains(Object)

确定某元素是否在 StringCollection 中。Determines whether an element is in the StringCollection.

(继承自 StringCollection)
IList.IndexOf(Object)

搜索指定的 Object,并返回整个 StringCollection 中第一个匹配项的从零开始的索引。Searches for the specified Object and returns the zero-based index of the first occurrence within the entire StringCollection.

(继承自 StringCollection)
IList.Insert(Int32, Object)

将元素插入 StringCollection 的指定索引处。Inserts an element into the StringCollection at the specified index.

(继承自 StringCollection)
IList.IsFixedSize

获取一个值,该值指示 StringCollection 对象是否具有固定大小。Gets a value indicating whether the StringCollection object has a fixed size.

(继承自 StringCollection)
IList.IsReadOnly

获取一个值,该值指示 StringCollection 对象是否为只读。Gets a value indicating whether the StringCollection object is read-only.

(继承自 StringCollection)
IList.Item[Int32]

获取或设置指定索引处的元素。Gets or sets the element at the specified index.

(继承自 StringCollection)
IList.Remove(Object)

StringCollection 中移除特定对象的第一个匹配项。Removes the first occurrence of a specific object from the StringCollection.

(继承自 StringCollection)

扩展方法

Cast<TResult>(IEnumerable)

IEnumerable 的元素强制转换为指定的类型。Casts the elements of an IEnumerable to the specified type.

OfType<TResult>(IEnumerable)

根据指定类型筛选 IEnumerable 的元素。Filters the elements of an IEnumerable based on a specified type.

AsParallel(IEnumerable)

启用查询的并行化。Enables parallelization of a query.

AsQueryable(IEnumerable)

IEnumerable 转换为 IQueryableConverts an IEnumerable to an IQueryable.

适用于

另请参阅