【问题标题】:Connecting SQL task to data flow task programatically (c#)以编程方式将 SQL 任务连接到数据流任务(c#)
【发布时间】:2013-07-04 14:13:36
【问题描述】:

如何以编程方式将 SQL 任务连接到数据流任务?

SQL 任务:

Executable exec = package.Executables.Add("STOCK:SQLTask");
TaskHost thMainPipe = (TaskHost)exec;

...

数据流:

MainPipe mp = ((TaskHost)stagingPackage.Executables.Add("DTS.Pipeline")).InnerObject as MainPipe;

...

尝试使用 PrecedenceConstraints.Add,得到 COM 错误。

PrecedenceConstraints.Add(derivedTask,(Executable) mp);

无法将“System.__ComObject”类型的 COM 对象转换为类类型 'Microsoft.SqlServer.Dts.Runtime.Executable'。

【问题讨论】:

  • 使用 STOCK:PipelineTask 代替 DTS.Pipeline
  • 发布完整的代码块来理解这个问题,thnx
  • SM,它奏效了。两者有什么区别?
  • 查看我的帖子作为答案,如果它解决了您的问题,请投票/接受我的答案。

标签: c# ssis


【解决方案1】:

使用 STOCK:PipelineTask 代替 DTS.Pipeline。 Executables.Add() 方法需要 CLSID、PROGID、STOCK 名字对象或 TaskInfo 对象的 CreationName 属性。股票绰号主要使用。 DTS.Pipeline 可能无法识别为其中任何一个。如果不使用 Stock Moniker,请指定等效于 STOCK:PipelineTask 的 CLSID 或 PROGID。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-12-30
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多