ForEachSMOEnumerator.EnumURN 属性
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
获取或设置一个字符串,其中包含所选枚举的 SMO 枚举统一资源名称 (URN) 。
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 由 a 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
可用枚举器:Foreach NodeList 枚举器
可用枚举器:Foreach SMO 枚举器
SMO 枚举器:Microsoft.SqlServer.Dts.Runtime.Enumerators.SMO.ForEachSMOEnumerator
Smo。EnumURN = RuntimeServer[@Variable='MachineName']/Server[@Name='localhost']/SMOEnumObj[@Name='Databases']/SMOEnumType[@Name='Names']
注解
SMO 枚举 URN 包含四个部分。 首先是字符串 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"
上面的代码示例使用名称枚举。