コード例 #1
0
        public CManagedComponentWrapper AddTargetTask(MainPipe dataFlow, string Name,
                                                      string TargetName, TargetType Targettype, ConnectionManager conMgrDestination,
                                                      out IDTSComponentMetaData100 targetTask, string tableStorageConnectionString)
        {
            string tName   = Name + " Destination";
            string classID = "";

            switch (Targettype)
            {
            case TargetType.Excel: classID = SSISMoniker.EXCEL_DESTINATION; break;

            case TargetType.FlatFile: classID = SSISMoniker.FLAT_FILE_DESTINATION; break;

            case TargetType.Table: classID = SSISMoniker.OLEDB_DESTINATION; break;

            case TargetType.TableStorage: classID = SSISMoniker.OLEDB_TABLESTORAGE_DESTINATION; break;

            case TargetType.SPList: classID = SSISMoniker.OLEDB_SP_DESTINATION; break;
            }

            targetTask = dataFlow.AddPipeLine(classID, tName);
            CManagedComponentWrapper InstanceDestination = targetTask.InitializeTask();

            if (Targettype == TargetType.TableStorage)
            {
                InstanceDestination.SetTableStorageDestination(TargetName, tableStorageConnectionString);
            }
            if (Targettype == TargetType.SPList)
            {
                InstanceDestination.SetSharePointListDestination(TargetName, tableStorageConnectionString);
            }
            else
            {
                targetTask.SetConnection(conMgrDestination);
            }

            if (Targettype == TargetType.Table)
            {
                InstanceDestination.SetTableDestination(TargetName);
                InstanceDestination.ConnectAndReinitializeMetaData(TargetName);
            }
            else if (Targettype == TargetType.FlatFile)
            {
            }

            return(InstanceDestination);
        }