语言

ScriptTask 类

定义

定义了脚本任务的类,允许开发者编写自定义代码,执行集成服务内置任务中无法实现的功能。

public ref class ScriptTask : Microsoft::SqlServer::Dts::Runtime::Task, Microsoft::SqlServer::Dts::Runtime::IDTSBreakpointSite, Microsoft::SqlServer::Dts::Runtime::IDTSComponentPersist
[Microsoft.SqlServer.Dts.Runtime.DtsTask(HelpKeyword="sql13.dts.designer.scripttask.F1", LocalizationType=typeof(Microsoft.SqlServer.Dts.Tasks.ScriptTask.Localized), SamplesTag="SsisScriptTask", TaskType="DTS90", UITypeName="Microsoft.SqlServer.Dts.Tasks.ScriptTask.ScriptTaskUI, Microsoft.SqlServer.ScriptTaskUI, Version=13.0.0.0, Culture=Neutral, PublicKeyToken=89845dcd8080cc91")]
[System.Runtime.InteropServices.ComVisible(true)]
[System.Runtime.InteropServices.Guid("04FAEAC9-FB98-4F21-8F96-0E857B739740")]
public class ScriptTask : Microsoft.SqlServer.Dts.Runtime.Task, Microsoft.SqlServer.Dts.Runtime.IDTSBreakpointSite, Microsoft.SqlServer.Dts.Runtime.IDTSComponentPersist
[System.Runtime.InteropServices.ComVisible(true)]
[Microsoft.SqlServer.Dts.Runtime.DtsTask(HelpKeyword="sql13.dts.designer.scripttask.F1", LocalizationType=typeof(Microsoft.SqlServer.Dts.Tasks.ScriptTask.Localized), SamplesTag="SsisScriptTask", TaskType="DTS90", UITypeName="Microsoft.SqlServer.Dts.Tasks.ScriptTask.ScriptTaskUI, Microsoft.SqlServer.ScriptTaskUI, Version=14.0.0.0, Culture=Neutral, PublicKeyToken=89845dcd8080cc91")]
[System.Runtime.InteropServices.Guid("4DF420FB-D5C2-4357-8FBE-ECB5E15554F8")]
public class ScriptTask : Microsoft.SqlServer.Dts.Runtime.Task, Microsoft.SqlServer.Dts.Runtime.IDTSBreakpointSite, Microsoft.SqlServer.Dts.Runtime.IDTSComponentPersist
[System.Runtime.InteropServices.ComVisible(true)]
[Microsoft.SqlServer.Dts.Runtime.DtsTask(HelpKeyword="sql13.dts.designer.scripttask.F1", LocalizationType=typeof(Microsoft.SqlServer.Dts.Tasks.ScriptTask.Localized), SamplesTag="SsisScriptTask", TaskType="DTS90", UITypeName="Microsoft.SqlServer.Dts.Tasks.ScriptTask.ScriptTaskUI, Microsoft.SqlServer.ScriptTaskUI, Version=15.0.0.0, Culture=Neutral, PublicKeyToken=89845dcd8080cc91")]
[System.Runtime.InteropServices.Guid("C2F3965A-3FE3-482B-A6F3-2514B78E149D")]
public class ScriptTask : Microsoft.SqlServer.Dts.Runtime.Task, Microsoft.SqlServer.Dts.Runtime.IDTSBreakpointSite, Microsoft.SqlServer.Dts.Runtime.IDTSComponentPersist
[<Microsoft.SqlServer.Dts.Runtime.DtsTask(HelpKeyword="sql13.dts.designer.scripttask.F1", LocalizationType=typeof(Microsoft.SqlServer.Dts.Tasks.ScriptTask.Localized), SamplesTag="SsisScriptTask", TaskType="DTS90", UITypeName="Microsoft.SqlServer.Dts.Tasks.ScriptTask.ScriptTaskUI, Microsoft.SqlServer.ScriptTaskUI, Version=13.0.0.0, Culture=Neutral, PublicKeyToken=89845dcd8080cc91")>]
[<System.Runtime.InteropServices.ComVisible(true)>]
[<System.Runtime.InteropServices.Guid("04FAEAC9-FB98-4F21-8F96-0E857B739740")>]
type ScriptTask = class
    inherit Task
    interface IDTSBreakpointSite
    interface IDTSSuspend
    interface IDTSComponentPersist
[<System.Runtime.InteropServices.ComVisible(true)>]
[<Microsoft.SqlServer.Dts.Runtime.DtsTask(HelpKeyword="sql13.dts.designer.scripttask.F1", LocalizationType=typeof(Microsoft.SqlServer.Dts.Tasks.ScriptTask.Localized), SamplesTag="SsisScriptTask", TaskType="DTS90", UITypeName="Microsoft.SqlServer.Dts.Tasks.ScriptTask.ScriptTaskUI, Microsoft.SqlServer.ScriptTaskUI, Version=14.0.0.0, Culture=Neutral, PublicKeyToken=89845dcd8080cc91")>]
[<System.Runtime.InteropServices.Guid("4DF420FB-D5C2-4357-8FBE-ECB5E15554F8")>]
type ScriptTask = class
    inherit Task
    interface IDTSBreakpointSite
    interface IDTSSuspend
    interface IDTSComponentPersist
[<System.Runtime.InteropServices.ComVisible(true)>]
[<Microsoft.SqlServer.Dts.Runtime.DtsTask(HelpKeyword="sql13.dts.designer.scripttask.F1", LocalizationType=typeof(Microsoft.SqlServer.Dts.Tasks.ScriptTask.Localized), SamplesTag="SsisScriptTask", TaskType="DTS90", UITypeName="Microsoft.SqlServer.Dts.Tasks.ScriptTask.ScriptTaskUI, Microsoft.SqlServer.ScriptTaskUI, Version=15.0.0.0, Culture=Neutral, PublicKeyToken=89845dcd8080cc91")>]
[<System.Runtime.InteropServices.Guid("C2F3965A-3FE3-482B-A6F3-2514B78E149D")>]
type ScriptTask = class
    inherit Task
    interface IDTSBreakpointSite
    interface IDTSSuspend
    interface IDTSComponentPersist
Public Class ScriptTask
Inherits Task
Implements IDTSBreakpointSite, IDTSComponentPersist
继承
ScriptTask
属性
实现

示例

以下代码示例在控制台应用中实现,向包添加了a ScriptTask ,并显示部分属性的默认值。

using System;  
using Microsoft.SqlServer.Dts.Runtime;  

namespace ScriptTaskCS  
{  
  class Program  
  {  
    static void Main(string[] args)  
    {  
      Package pkg = new Package();  
      string newLine = System.Environment.NewLine;  

      Executable exe = pkg.Executables.Add("STOCK:ScriptTask");  
      TaskHost thTask = (TaskHost)exe;  

      string taskInfo;  
      taskInfo =   

        "Entry point: " +   
        thTask.Properties["EntryPoint"].GetValue(thTask) + newLine +   
        "Script Language: " +   
        thTask.Properties["ScriptLanguage"].GetValue(thTask) + newLine +   
        "ReadOnlyVariables: " +   
        thTask.Properties["ReadOnlyVariables"].GetValue(thTask) + newLine +   
        "ReadWriteVariables: " +   
        thTask.Properties["ReadWriteVariables"].GetValue(thTask);  

      Console.WriteLine(taskInfo);  
      Console.Read();  
    }  
  }  
}  
Imports Microsoft.SqlServer.Dts.Runtime  

Module Module1  

  Sub Main()  

    Dim pkg As New Package  
    Dim newLine As String = System.Environment.NewLine  

    Dim exe As Executable = pkg.Executables.Add("STOCK:ScriptTask")  
    Dim thTask As TaskHost = CType(exe, TaskHost)  

    Dim taskInfo As String  
    taskInfo =   

      "Entry point: " & _  
      thTask.Properties("EntryPoint").GetValue(thTask) & newLine & _  
      "Script Language: " & _  
      thTask.Properties("ScriptLanguage").GetValue(thTask) & newLine & _  
      "ReadOnlyVariables: " & _  
      thTask.Properties("ReadOnlyVariables").GetValue(thTask) & newLine & _  
      "ReadWriteVariables: " & _  
      thTask.Properties("ReadWriteVariables").GetValue(thTask)  

    Console.WriteLine(taskInfo)  
    Console.Read()  

  End Sub  

End Module  

注解

ScriptTask类定义脚本任务,并处理脚本任务与运行时及 Visual Studio for Applications 的交互。

更多信息请参见 脚本任务脚本任务的编码与调试

构造函数

名称 说明
ScriptTask()

初始化 ScriptTask 类的新实例。

属性

名称 说明
BreakpointManager

它被 BreakpointManager 用来控制这个任务的断点。

Breakpoints

为此任务设置了一系列断点。

DebugMode

获取或设置一个值,指示任务是否处于调试模式运行,以及是否应在任务运行时触发 OnBreakpointHit(IDTSBreakpointSite, BreakpointTarget) 事件。

DefaultActiveItem

会用默认脚本。

EntryPoint

获取或设置被执行的类的名称作为入口点。

ExecutionValue

获得用户自定义对象。 此字段是只读的。

ProjectTemplatePath

获取指定项目模板的路径。

ReadOnlyVariables

获取或设置用户提供给包的已存变量的逗号分隔列表,供只读访问。

ReadWriteVariables

获取或设置用户提供给包的已存变量的逗号分隔列表,供读写访问。

ScriptingEngine

VSTATaskScriptingEngine获取类。

ScriptLanguage

获取或设置脚本所用的编程语言。

ScriptLoaded

获得一个值,表示任务是否包含自定义脚本。

ScriptProjectName

获取或设定脚本项目名称。

ScriptStorage

获取脚本的VSTAScriptProjectStorage。

SuspendRequired

获得或设置一个布尔值,指示任务遇到断点时是否应暂停执行。 当遇到断点时,运行时引擎为任务和容器设置该值。

TargetServerVersion

定义了脚本任务的类,允许开发者编写自定义代码,执行集成服务内置任务中无法实现的功能。

(继承自 Task)
Version

成员被淘汰;参见备注。 返回任务版本。 此属性为只读。

(继承自 Task)

方法

名称 说明
AcceptBreakpointManager(BreakpointManager)

把任务 BreakpointManager 交给了。 该方法由运行时调用,不用于代码中。

CanUpdate(String)

成员被淘汰;参见备注。 一个布尔值,表示新包的 XML 是否可以更新旧包的 XML。

(继承自 Task)
Equals(Object)

确定两个对象实例是否相等。

(继承自 DtsObject)
Execute(Connections, VariableDispenser, IDTSComponentEvents, IDTSLogging, Object)

执行本实例DTS脚本任务中包含的脚本。

Finalize()

释放该 ScriptTask命令使用的所有资源。

GetConnectionID(Connections, String)

获得包含连接ID的字符串。

(继承自 Task)
GetConnectionName(Connections, String)

获得包含连接名称的字符串。

(继承自 Task)
GetHashCode()

返回此实例的哈希代码。

(继承自 DtsObject)
InitializeTask(Connections, VariableDispenser, IDTSInfoEvents, IDTSLogging, EventInfos, LogEntryInfos, ObjectReferenceTracker)

初始化与脚本任务相关的属性。 该方法由运行时调用,不用于代码中。

LoadFromXML(XmlElement, IDTSInfoEvents)

实现从 XML 文档加载属性。

ReportBreakpointChanges()

报告任务中断点的变化。

ResumeExecution()

暂停后,运行时引擎恢复任务或容器的执行。

SaveToXML(XmlDocument, IDTSInfoEvents)

实现了将属性保存为XML文档的功能。

SetUniqueScriptProjectName()

设定脚本项目的唯一名称。

SuspendExecution()

表示可执行文件必须暂停执行。 这种方法被称为运行时引擎。

Update(String)

成员被淘汰;参见备注。 如果 CanUpdate(String) 将 设置为 true,该方法将旧包 XML 更新为新的包 XML。

(继承自 Task)
Validate(Connections, VariableDispenser, IDTSComponentEvents, IDTSLogging)

验证组件配置正确。

适用于