ForEachEnumeratorHost.CollectionEnumerator Properti
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
Mendapatkan atau menetapkan Boolean yang menunjukkan apakah enumerator hosting menghitung koleksi objek atau menghitung koleksi koleksi.
public:
property bool CollectionEnumerator { bool get(); void set(bool value); };
public bool CollectionEnumerator { get; set; }
member this.CollectionEnumerator : bool with get, set
Public Property CollectionEnumerator As Boolean
Nilai Properti
Boolean yang menunjukkan apa yang diulangi oleh enumerator.
Penerapan
Contoh
Contoh kode berikut membuat ForEachEnumeratorHost untuk menahan ForEachSMOEnumerator enumerator, dan menampilkan properti host.
using System;
using System.Collections.Generic;
using System.Text;
using Microsoft.SqlServer.Dts.Runtime.Enumerators.SMO;
using Microsoft.SqlServer.Dts.Runtime;
namespace Microsoft.SqlServer.SSIS.Sample
{
internal class EnumType
{
public const string SMOEnum = "Foreach SMO Enumerator";
}
class Program
{
static void Main(string[] args)
{
Application app = new Application();
ForEachEnumeratorInfos infos = app.ForEachEnumeratorInfos;
ForEachEnumeratorInfo info = null;
foreach (ForEachEnumeratorInfo enumInfo in infos)
{
Console.Write("Available enumerators: {0}\n", enumInfo.Name);
if (enumInfo.Name == EnumType.SMOEnum)
{
// Set the ForEachEnumeratorInfo variable
// to the SMo enumerator, and use it
// later in the CreateNew method.
info = enumInfo;
}
}
ForEachEnumeratorHost enumH = info.CreateNew();
Console.WriteLine();
Console.WriteLine("Host InnerObject: " + enumH.InnerObject.ToString());
Console.WriteLine("CollectionEnumerator? {0}", enumH.CollectionEnumerator);
Console.WriteLine("CreationName: {0}", enumH.CreationName);
Console.WriteLine("Description: {0}", enumH.Description);
Console.WriteLine("Value of DelayValidation: {0}", enumH.DelayValidation);
Console.WriteLine("HostType: {0}", enumH.HostType);
Console.WriteLine("ID: {0}", enumH.ID);
Console.WriteLine("Name: {0}", enumH.Name);
}
}
}
Imports System
Imports System.Collections.Generic
Imports System.Text
Imports Microsoft.SqlServer.Dts.Runtime.Enumerators.SMO
Imports Microsoft.SqlServer.Dts.Runtime
Namespace Microsoft.SqlServer.SSIS.Sample
Friend Class EnumType
Public const String SMOEnum = "Foreach SMO Enumerator"
End Class
Class Program
Shared Sub Main(ByVal args() As String)
Dim app As Application = New Application()
Dim infos As ForEachEnumeratorInfos = app.ForEachEnumeratorInfos
Dim info As ForEachEnumeratorInfo = Nothing
Dim enumInfo As ForEachEnumeratorInfo
For Each enumInfo In infos
Console.Write("Available enumerators: {0}\n", enumInfo.Name)
If enumInfo.Name = EnumType.SMOEnum Then
' Set the ForEachEnumeratorInfo variable
' to the SMo enumerator, and use it
' later in the CreateNew method.
info = enumInfo
End If
Next
Dim enumH As ForEachEnumeratorHost = info.CreateNew()
Console.WriteLine()
Console.WriteLine("Host InnerObject: " + enumH.InnerObject.ToString())
Console.WriteLine("CollectionEnumerator? {0}", enumH.CollectionEnumerator)
Console.WriteLine("CreationName: {0}", enumH.CreationName)
Console.WriteLine("Description: {0}", enumH.Description)
Console.WriteLine("Value of DelayValidation: {0}", enumH.DelayValidation)
Console.WriteLine("HostType: {0}", enumH.HostType)
Console.WriteLine("ID: {0}", enumH.ID)
Console.WriteLine("Name: {0}", enumH.Name)
End Sub
End Class
End Namespace
Contoh Output:
Enumerator yang tersedia: Enumerator File Foreach
Enumerator yang tersedia: Enumerator Item Foreach
Enumerator yang tersedia: Foreach ADO Enumerator
Enumerator yang tersedia: Foreach ADO.NET Enumerator Kumpulan Baris Skema
Enumerator yang tersedia: Foreach Dari Enumerator Variabel
Enumerator yang tersedia: Foreach NodeList Enumerator
Enumerator yang tersedia: Foreach SMO Enumerator
Host InnerObject: Microsoft.SqlServer.Dts.Runtime.Enumerators.SMO.ForEachSMOEnumerator
CollectionEnumerator? FALSE
CreationName: Microsoft.SqlServer.Dts.Runtime.Enumerators.SMO.ForEachSMOEnumerator, Microsoft.SqlServer.ForEachSMOEnumerator, Version=10.0.000.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91
Deskripsi:
Nilai DelayValidation: False
HostType: ForEachEnumerator
ID: {C91BA4D0-6AD4-4BEE-A7C4-9A737880773E}
Nama: {C91BA4D0-6AD4-4BEE-A7C4-9A737880773E}
Keterangan
true menunjukkan bahwa enumerator melakukan iterasi pada kumpulan koleksi. Jika false, enumerator melakukan iterasi atas kumpulan objek.