Ssis 将行从一个数据流任务发送到另一个数据流任务

Ssis 将行从一个数据流任务发送到另一个数据流任务,ssis,dataflowtask,Ssis,Dataflowtask,回应我被删除的帖子 我怀疑我可能错了,将有限数量的行从一个数据流任务传输到另一个数据流任务的方法是在 第一个脚本和第二个脚本中的ScriptTask作为源 我需要知道如何派生连接字符串以连接到该字符串 DataReader,如果这些都是在一个包中完成的 我正在寻找一种将处理过的行从一个数据流任务发送到另一个数据流任务的方法,以简化设计并更好地控制 这是我对这个问题的卓越解决方案 记录集源代码和使用的示例 using System; using System.Data; using Microso

回应我被删除的帖子

我怀疑我可能错了,将有限数量的行从一个数据流任务传输到另一个数据流任务的方法是在 第一个脚本和第二个脚本中的ScriptTask作为源

我需要知道如何派生连接字符串以连接到该字符串 DataReader,如果这些都是在一个包中完成的


我正在寻找一种将处理过的行从一个数据流任务发送到另一个数据流任务的方法,以简化设计并更好地控制

这是我对这个问题的卓越解决方案

记录集源代码和使用的示例

using System;
using System.Data;
using Microsoft.SqlServer.Dts.Pipeline.Wrapper;
using Microsoft.SqlServer.Dts.Runtime.Wrapper;
using System.Data.SqlClient;
using System.Windows.Forms;
using System.Data.OleDb;
using System.Linq;
using System.Data.DataSetExtensions;

[Microsoft.SqlServer.Dts.Pipeline.SSISScriptComponentEntryPointAttribute]
public class ScriptMain : UserComponent
{

    private OleDbDataAdapter oleDA = new OleDbDataAdapter();
    private DataTable table = new DataTable();
    private DataRow[] result;


    public override void PreExecute()
    {

        base.PreExecute();

        oleDA.Fill(table, Variables.DatabaseObjects);


        var query = from table_address in table.AsEnumerable()

                    select table_address;

        result = query.ToArray<DataRow>();


    }

    public override void PostExecute()
    {
        base.PostExecute();

    }

    public override void CreateNewOutputRows()
    {
        if (result != null)
        {
            foreach (DataRow ro in result)
            {
           Output0Buffer.AddRow();
//----------------------------------------[CHANGE BELOW]-------------------------------------------------
// EXAMPLE:       
       if (ro["File"] != null && ro["Sequence_ID"] != null && ro["Execution_ID"] != null && ro["Object"] != null)
                {
                    Output0Buffer.File = ro["File"].ToString();
                    Output0Buffer.SequenceID = Convert.ToInt64(ro["Sequence_ID"]);
                    Output0Buffer.Object = ro["Object"].ToString();
                    Output0Buffer.ExecutionID = Convert.ToInt64(ro["Execution_ID"]);
            }
//--------------------------------------- [CHANGE ABOVE]------------------------------------------------
            }
        }
    }






}

你的旧链接已失效。一些细节如何。哦…当我看到我的帖子被标记为[被社区删除]时,我简直不敢相信,我不知道我是唯一一个可以查看它的人。在我重新编辑的问题中引用了我先前发布的原始问题。