CounterCreationDataCollection.AddRange 方法

定义

向集合添加多个 CounterCreationData 实例。

重载

AddRange(CounterCreationData[])

将指定的 CounterCreationData 实例数组添加到该集合中。

AddRange(CounterCreationDataCollection)

将指定的 CounterCreationData 实例集合添加到该集合中。

AddRange(CounterCreationData[])

Source:
CounterCreationDataCollection.cs
Source:
CounterCreationDataCollection.cs
Source:
CounterCreationDataCollection.cs

将指定的 CounterCreationData 实例数组添加到该集合中。

public:
 void AddRange(cli::array <System::Diagnostics::CounterCreationData ^> ^ value);
public void AddRange (System.Diagnostics.CounterCreationData[] value);
member this.AddRange : System.Diagnostics.CounterCreationData[] -> unit
Public Sub AddRange (value As CounterCreationData())

参数

value
CounterCreationData[]

要追加到现有集合的 CounterCreationData 实例的数组。

例外

valuenull

适用于

AddRange(CounterCreationDataCollection)

Source:
CounterCreationDataCollection.cs
Source:
CounterCreationDataCollection.cs
Source:
CounterCreationDataCollection.cs

将指定的 CounterCreationData 实例集合添加到该集合中。

public:
 void AddRange(System::Diagnostics::CounterCreationDataCollection ^ value);
public void AddRange (System.Diagnostics.CounterCreationDataCollection value);
member this.AddRange : System.Diagnostics.CounterCreationDataCollection -> unit
Public Sub AddRange (value As CounterCreationDataCollection)

参数

value
CounterCreationDataCollection

要追加到现有集合的 CounterCreationData 实例的集合。

例外

valuenull

示例

以下示例演示如何使用 AddRange(CounterCreationDataCollection) 方法重载将 对象从一个添加到 CounterCreationData 另一个 CounterCreationDataCollectionCounterCreationDataCollection对象。

#using <System.dll>

using namespace System;
using namespace System::Diagnostics;
int main()
{
   PerformanceCounter^ myCounter;
   try
   {
      String^ myCategoryName;
      int numberOfCounters;
      Console::Write( "Enter the number of counters : " );
      numberOfCounters = Int32::Parse( Console::ReadLine() );
      array<CounterCreationData^>^myCounterCreationData = gcnew array<CounterCreationData^>(numberOfCounters);
      for ( int i = 0; i < numberOfCounters; i++ )
      {
         Console::Write( "Enter the counter name for {0} counter : ", i );
         myCounterCreationData[ i ] = gcnew CounterCreationData;
         myCounterCreationData[ i ]->CounterName = Console::ReadLine();
      }
      CounterCreationDataCollection^ myCounterCollection = gcnew CounterCreationDataCollection( myCounterCreationData );
      Console::Write( "Enter the category Name : " );
      myCategoryName = Console::ReadLine();

      // Check if the category already exists or not.
      if (  !PerformanceCounterCategory::Exists( myCategoryName ) )
      {
         CounterCreationDataCollection^ myNewCounterCollection = gcnew CounterCreationDataCollection;

         // Add the 'CounterCreationDataCollection' to 'CounterCreationDataCollection' Object*.
         myNewCounterCollection->AddRange( myCounterCollection );
         PerformanceCounterCategory::Create( myCategoryName, "Sample Category", myNewCounterCollection );
         for ( int i = 0; i < numberOfCounters; i++ )
         {
            myCounter = gcnew PerformanceCounter( myCategoryName,myCounterCreationData[ i ]->CounterName,"",false );

         }
         Console::WriteLine( "The list of counters in CounterCollection are: " );
         for ( int i = 0; i < myNewCounterCollection->Count; i++ )
            Console::WriteLine( "Counter {0} is '{1}'", i + 1, myNewCounterCollection[ i ]->CounterName );
      }
      else
      {
         Console::WriteLine( "The category already exists" );
      }
   }
   catch ( Exception^ e ) 
   {
      Console::WriteLine( "Exception: {0}.", e->Message );
   }
}
using System;
using System.Diagnostics;

public class CounterDataCollectionExample
{
    public static void Main()
    {
        try
        {

            string myCategoryName;
            int numberOfCounters;
            Console.Write("Enter the number of counters : ");
            numberOfCounters = int.Parse(Console.ReadLine());
            CounterCreationData[] myCounterCreationData =
               new CounterCreationData[numberOfCounters];
            for (int i = 0; i < numberOfCounters; i++)
            {
                Console.Write("Enter the counter name for {0} counter : ", i);
                myCounterCreationData[i] = new CounterCreationData();
                myCounterCreationData[i].CounterName = Console.ReadLine();
            }
            CounterCreationDataCollection myCounterCollection =
               new CounterCreationDataCollection(myCounterCreationData);
            Console.Write("Enter the category Name : ");
            myCategoryName = Console.ReadLine();
            // Check if the category already exists or not.
            if (!PerformanceCounterCategory.Exists(myCategoryName))
            {
                CounterCreationDataCollection myNewCounterCollection =
                   new CounterCreationDataCollection();
                // Add the 'CounterCreationDataCollection' to 'CounterCreationDataCollection' object.
                myNewCounterCollection.AddRange(myCounterCollection);

                PerformanceCounterCategory.Create(myCategoryName, "Sample Category",
                PerformanceCounterCategoryType.SingleInstance, myNewCounterCollection);

                Console.WriteLine("The list of counters in CounterCollection are: ");
                for (int i = 0; i < myNewCounterCollection.Count; i++)
                    Console.WriteLine("Counter {0} is '{1}'", i + 1, myNewCounterCollection[i].CounterName);
            }
            else
            {
                Console.WriteLine("The category already exists");
            }
        }
        catch (Exception e)
        {
            Console.WriteLine("Exception: {0}.", e.Message);
            return;
        }
    }
}

Imports System.Diagnostics

Public Class CounterDataCollectionExample
   Private Shared myCounter As PerformanceCounter
   Public Shared Sub Main()
      Try

         Dim myCategoryName As String
         Dim numberOfCounters As Integer
         Console.Write("Enter the number of counters : ")
         numberOfCounters = Integer.Parse(Console.ReadLine())
         Dim myCounterCreationData(numberOfCounters-1) As CounterCreationData
         Dim i As Integer
         For i = 0 To numberOfCounters - 1
            Console.Write("Enter the counter name for {0} counter : ", i)
            myCounterCreationData(i) = New CounterCreationData()
            myCounterCreationData(i).CounterName = Console.ReadLine()
         Next i
         Dim myCounterCollection As New CounterCreationDataCollection(myCounterCreationData)
         Console.Write("Enter the category Name : ")
         myCategoryName = Console.ReadLine()
         ' Check if the category already exists or not.
         If Not PerformanceCounterCategory.Exists(myCategoryName) Then
            Dim myNewCounterCollection As New CounterCreationDataCollection()
            ' Add the 'CounterCreationDataCollection' to 'CounterCreationDataCollection' object.
            myNewCounterCollection.AddRange(myCounterCollection)

                PerformanceCounterCategory.Create(myCategoryName, "Sample Category", _
                       PerformanceCounterCategoryType.SingleInstance, myNewCounterCollection)

            Console.WriteLine("The list of counters in CounterCollection are: ")

            For i = 0 To myNewCounterCollection.Count - 1
               Console.WriteLine("Counter {0} is '{1}'", i + 1, _
                                             myNewCounterCollection(i).CounterName)
            Next i
         Else
            Console.WriteLine("The category already exists")
         End If

      Catch e As Exception
         Console.WriteLine("Exception: {0}.", e.Message)
         Return
      End Try
   End Sub
End Class

适用于