ForEachEnumeratorHost.InnerObject Свойство
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Возвращает внутренний объект узла, который является размещаемым ForEachEnumerator.
public:
property System::Object ^ InnerObject { System::Object ^ get(); };
public object InnerObject { get; }
member this.InnerObject : obj
Public ReadOnly Property InnerObject As Object
Значение свойства
Объект.
Реализации
Примеры
Несколько классов создаются и с помощью .ForEachEnumeratorHost В следующем примере кода показаны перечислители, доступные в настоящее время приложению, как создать ForEachSMOEnumerator объект узла, а затем привести InnerObject его к конкретному типу перечислителя.
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.Samples
{
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);
// When the SMO enumerator is found, set the info variable.
if (enumInfo.Name == EnumType.SMOEnum)
{
info = enumInfo;
}
}
ForEachEnumeratorHost enumH = info.CreateNew();
Console.WriteLine("SMO Enumerator: " + enumH.InnerObject.ToString());
ForEachSMOEnumerator smoEnumerator = (ForEachSMOEnumerator)enumH.InnerObject;
}
}
}
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.Samples
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
Dim enumInfo As ForEachEnumeratorInfo
End Enum
For Each EnumInfo In infos
For Each EnumInfo In infos Console.Write("Available enumerators: {0}\n" EnumInfo.Name) End Enum
For Each enumInfo In infos
Console.Write("Available enumerators: {0}\n" enumInfo.Name)
End Enum
End Enum
' When the SMO enumerator is found, set the info variable.
If EnumInfo.Name = EnumType.SMOEnum Then
Dim EnumInfo.Name As If = EnumType.SMOEnum Then info = EnumInfo End Enum
If enumInfo.Name = EnumType.SMOEnum Then
info = enumInfo
End Enum
End Enum
End If
Next
Dim EnumH As ForEachEnumeratorHost = info.CreateNew()
Dim enumH As ForEachEnumeratorHost = info.CreateNew()
End Enum
Console.WriteLine("SMO Enumerator: " + EnumH.InnerObject.ToString())
Console.WriteLine("SMO Enumerator: " + enumH.InnerObject.ToString())
End Enum
Dim smoEnumerator As ForEachSMOEnumerator = CType(EnumH.InnerObject, ForEachSMOEnumerator)
Dim smoEnumerator As ForEachSMOEnumerator = CType(enumH.InnerObject, ForEachSMOEnumerator)
End Enum
End Sub
End Class
End Namespace
Образец вывода:
Доступные перечислители: перечислитель файлов foreach
Доступные перечислители: перечислитель элементов foreach
Доступные перечислители: перечислитель ADO foreach
Доступные перечислители: перечислитель наборов строк схемы foreach ADO.NET
Доступные перечислители: Foreach From Variable Enumerator
Доступные перечислители: перечислитель Foreach NodeList
Доступные перечислители: перечислитель SMO foreach
Перечислитель SMO: Microsoft.SqlServer.Dts.Runtime.Enumerators.SMO.ForEachSMOEnumerator
Smo. EnumURN = RuntimeServer[@Variable='MachineName']/Server[@Name='localhost']/SMOEnumObj[@Name='Databases']/SMOEnumType[@Name='Names']