ForEachSMOEnumerator.EnumURN Свойство
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Возвращает или задает строку, содержащую универсальное имя ресурса (URN) перечисления SMO для выбранного перечисления.
public:
property System::String ^ EnumURN { System::String ^ get(); void set(System::String ^ value); };
public string EnumURN { get; set; }
member this.EnumURN : string with get, set
Public Property EnumURN As String
Значение свойства
Строка, содержащая параметры конфигурации перечислителя.
Реализации
Примеры
Объект ForEachSMOEnumerator создается и размещается объектом ForEachEnumeratorHost. В следующем примере кода показано, как создать ForEachSMOEnumerator объект узла.
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;
smoEnumerator.EnumURN = "RuntimeServer[@Variable='MachineName']/Server[@Name='localhost']/" +
"SMOEnumObj[@Name='Databases']/SMOEnumType[@Name='Names']";
Console.WriteLine("SMO.EnumURN = {0}", smoEnumerator.EnumURN);
}
}
}
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
smoEnumerator.EnumURN = "RuntimeServer[@Variable='MachineName']/Server[@Name='localhost']/" +
"SMOEnumObj[@Name='Databases']/SMOEnumType[@Name='Names']"
Console.WriteLine("SMO.EnumURN = {0}", smoEnumerator.EnumURN)
End Sub
End Class
End Namespace
Образец вывода:
Доступные перечислители: перечислитель файлов foreach
Доступные перечислители: перечислитель элементов foreach
Доступные перечислители: перечислитель Foreach ADO
Доступные перечислители: перечислитель набора строк схемы foreach ADO.NET
Доступные перечислители: foreach from Variable Enumerator
Доступные перечислители: перечислитель NodeList foreach
Доступные перечислители: перечислитель SMO foreach
Перечислитель SMO: Microsoft.SqlServer.Dts.Runtime.Enumerators.SMO.ForEachSMOEnumerator
Smo. EnumURN = RuntimeServer[@Variable='MachineName']/Server[@Name='localhost']/SMOEnumObj[@Name='Databases']/SMOEnumType[@Name='Names']
Комментарии
URN перечисления SMO содержит четыре части. Сначала это строка RuntimeServer. за которым следует подключение. Следующая строка кода является примером свойства, EnumURN в котором было указано соединение.
RuntimeServer[@Connection='{B1552E8D-43AE-44B1-B5D3-03C4F5461977}']/Server[@Name='localhost']/SMOEnumObj[@Name='Databases']/SMOEnumType[@Name='Names']
Вторая часть строки — параметр имени сервера.
Последние две части строки являются SMOEnumObj и SMOEnumType параметрами. Параметр SMOEnumObj , который является третьим в четырехкомпонентной строке, описывает, какой объект перечисления перечисляется. Допустимые значения:
@"LinkedServers"
@"Jobs"
@"Logins"
@"Databases"
@"FileGroups"
@"DataFiles"
@"LogFiles"
@"StoredProcedures"
@"UserDefinedDataTypes"
@"UserDefinedFunctions"
@"Views"
@"Users"
@"Tables"
@"Columns"
@"ForeignKeys"
@"Триггеры"
В приведенном выше примере кода показано перечисление по базам данных.
Четвертая и последняя часть строки конфигурации — это SMOEnumType параметр, указывающий используемый тип перечисления. Допустимые значения:
@"Objects"
@"ObjectsPP"
@"Names"
@"URNs"
@"Locations"
Приведенный выше пример кода перечисляет имена.