WEB开发网
开发学院数据库MSSQL Server 为SSIS编写自定义数据流组件(DataFlow Component)... 阅读

为SSIS编写自定义数据流组件(DataFlow Component)之进阶篇:自定义编辑器

 2009-09-19 00:00:00 来源:WEB开发网   
核心提示: 2. 然后,在组件类上面进行指定关联[DtsPipelineComponent(ComponentType=ComponentType.SourceAdapter,Description="这是我的一个自定义数据源组件,为SSIS编写自定义数据流组件(DataFlow Componen

2. 然后,在组件类上面进行指定关联

  [DtsPipelineComponent(
     ComponentType=ComponentType.SourceAdapter,
     Description="这是我的一个自定义数据源组件,它可以读取某个文件夹下面的文件信息",
     DisplayName="文件夹数据源",
     UITypeName = "MyDataFlowComponentSample.MyDataSourceUIEditor, MyDataFlowComponentSample, Version=1.0.0.0, 

Culture=neutral, PublicKeyToken=5207ee26f0ac0166"
     )]

确实就是如上的步骤。其实并不复杂,对吧。很多技术都是想通的。

下面我来简单地实现一下这个编辑器。为此我需要添加一个新的窗体。

为SSIS编写自定义数据流组件(DataFlow Component)之进阶篇:自定义编辑器

窗体代码大致如下

using System;
using System.Windows.Forms;
using Microsoft.SqlServer.Dts.Pipeline.Wrapper;
using Microsoft.SqlServer.Dts.Runtime;

namespace MyDataFlowComponentSample
{
  public partial class MyDatasourceUIEditorForm : Form
  {
    public MyDatasourceUIEditorForm()
    {
      InitializeComponent();
    }

    IDTSComponentMetaData90 metaValue;
    Variables vars;
    Connections conns;
    /// <summary>
    /// 这个特殊的构造器可以让编辑器与具体的组件进行联系
    /// </summary>
    /// <param name="meta">这个代表了组件的元数据</param>
    /// <param name="variables">这是包中的变量</param>
    /// <param name="connections">这是包中的连接管理器</param>
    public MyDatasourceUIEditorForm(IDTSComponentMetaData90 meta, 
      Variables variables, Connections connections)
      : this()
    {
      metaValue = meta;
      vars = variables;
      conns = connections;
    }
    private void btOk_Click(object sender, EventArgs e)
    {
      metaValue.CustomPropertyCollection["Folder"].Value=@"E:\Temp";
      //作为演示目的,这里直接用代码给某个属性赋值
    }
  }
}

上一页  1 2 3 4  下一页

Tags:SSIS 编写 定义

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接