我在 SSIS 包中编写了一个任务脚本。我有一个对象类型变量 VAR_A,并且我已将 ClassA 对象分配给该变量 VAR_A。像:-ClassA classA=new ClassA();Dts.Variables["User::VAR_A"].Value = classA; //Assigned here现在我有另一个任务脚本,我将 VAR_A 变量作为 OBJECT 类对象,但现在我想动态地或使用反射将此对象转换为 ClassA 对象。因为可以有多个对象,我想使用 ToString() 打印所有对象的值,我在所有类中都覆盖了它。像下面这样:-Microsoft.SqlServer.Dts.Runtime.Application app = new Microsoft.SqlServer.Dts.Runtime.Application();Package pkg = app.LoadPackage(@"C:\Users\Sample-SSIS-Package\\" + @"sample_Package.dtsx", null);Variables pkgVars = pkg.Variables;foreach (Variable pkgVar in pkgVars){ if (pkgVar.DataType == TypeCode.Object) { Object obj = pkgVar.Value; //This below line should be dynamic, I cant use manual casting because this can be ClassA or ClassB or CLassC ..anything ClassA ca=(ClassA)obj ; MessageBox.Show(pkgVar.Name+ "-----"+ca.ToString()); }}
2 回答
- 2 回答
- 0 关注
- 185 浏览
添加回答
举报
0/150
提交
取消