先决条件检索复杂对象:
我想在包执行开始连接到MS Dynamics CRM中的Web服务和重用遍布包的连接,但我没有通过SSIS变量做到这一点。SSIS脚本任务`无效的转换exception`从变量
我不能使用连接管理器,因为我使用OrganizationService.Execute
方法不是由WebService的任务向导
步骤支持:
- 新增Microsoft.Xrm.Sdk的DLL到GAC和脚本参考;
- 创建数据流任务和内部
- 创建2个变量
crmOrganizationService
和crmOrganizationServiceProxy
- 类型的两个两个独立的脚本任务
System.Object
script task 1
和script task 2
可以读写它们
- 类型的两个两个独立的脚本任务
内
script task 1
:- 实例化
OrganizationServiceProxy
和OrganizationService
并连接到MS Dynamics CRM Web服务。 分配对象的两个实例变量
//create public OrganizationServiceProxy _serviceProxy = new OrganizationServiceProxy(orgServiceManagement, adCredentials); public IOrganizationService _service =(IOrganizationService)_serviceProxy; //assign this.Variables.crmOrganizationServiceProxy= _serviceProxy; this.Variables.crmOrganizationService=_service;
- 实例化
内的
script task 2
:OrganizationServiceProxy _serviceProxy = (OrganizationServiceProxy)this.Variables.crmOrganizationServiceProxy
错误:
在步骤5我接受,因为无法投的无效转换异常System.Object
为Microsoft.Xrm.Sdk.Client.OrganizationServiceProxy
解决方法:
我敢肯定,问题是变量的基本拳法,而通过他们的脚本任务之间。但我没有找到更好的一般方法。在它内部,我需要在脚本任务之间传递自定义类的实例。