如何为自定义属性提供表达式绑定支持
2009-09-19 00:00:00 来源:WEB开发网 闂傚倸鍊搁崐鎼佸磹閹间礁纾归柟闂寸绾惧綊鏌熼梻瀵割槮缁惧墽鎳撻—鍐偓锝庝簻椤掋垺銇勯幇顖毿撻柟渚垮妼椤粓宕卞Δ鈧獮濠勭磽閸屾艾鈧懓顫濋妸鈺佺疅缂佸顑欓崥瀣煕椤愵偅绶氱紓鍐╂礋濮婂宕掑▎鎴М濠电姭鍋撻梺顒€绉甸幆鐐哄箹濞n剙濡肩紒鎰殜閺屸€愁吋鎼粹€茬敖婵炴垶鎸哥粔鐢稿Φ閸曨垰鍐€妞ゆ劦婢€濞岊亪姊虹紒妯诲蔼闁稿海鏁诲濠氭晲婢跺﹤宓嗛梺缁樺姈缁佹挳宕戦幘璇叉嵍妞ゆ挻绋戞禍鐐叏濡厧浜鹃悗姘炬嫹

我们在SSIS的设计过程中,经常会用到表达式。我也经常在讲课的时候提到:变量和表达式是SSIS包的灵魂,只有掌握了这两个东西的使用,才能设计足够灵活的包。
那么,我们怎么样给自定义组件的自定义属性实现表达式绑定支持呢?
其实比较简单,我们只需要一句代码就可以了。不需要其他任何的具体实现
IDTSCustomProperty90 folder = ComponentMetaData.CustomPropertyCollection.New();
folder.Name = "Folder";
//folder.TypeConverter = typeof(FolderEnum).AssemblyQualifiedName;
folder.UITypeEditor = typeof(MyTypeUIEditor).AssemblyQualifiedName;
folder.ExpressionType = DTSCustomPropertyExpressionType.CPET_NOTIFY;
注意,只要给自定义属性指定一个ExpressionType即可。指定为NOTIFY
在BI Studio中测试效果
图片看不清楚?请点击这里查看原图(大图)。
选中“数据流任务”,在属性窗口中,点击“Expressions”右侧的一个小按钮
图片看不清楚?请点击这里查看原图(大图)。
在这里就可以与变量进行绑定。为了演示,我们准备一个变量:vFolder
图片看不清楚?请点击这里查看原图(大图)。
图片看不清楚?请点击这里查看原图(大图)。
图片看不清楚?请点击这里查看原图(大图)。
到这里为止,我们就实现了自定义属性的表达式绑定
题外话:
我们之前探讨过自定义任务项(Task)的开发。这些自定义任务项的属性是如何与表达式绑定呢?
好消息是:自定义任务项(Task)的属性是自动可以与表达式绑定的。无需任何设计。例如我们来看一下我们之前写的那个“超强XML任务”
图片看不清楚?请点击这里查看原图(大图)。
更多精彩
赞助商链接