有没有办法在ssis包中调用Web服务,以便将一些数据插入SQL Server中的表中?怎么样?请问任何样品或指导?
答案 0 :(得分:0)
我假设您的问题是,您指的是使用Web服务作为数据流的目标?我继承了一系列与我们的MS CRM站点集成的软件包。按照设计,这些包装非常适合SSIS范例,但这是我的负担......
这些包通常符合提供给脚本任务(目标)的源(OLE DB或平面文件)的形式。我不知道提供特定任务的所有代码是有启发性的。它只是为发送到它的每一行调用Web服务。 RBAR不是基于SSIS或基于语言设置的语言,但您当然可以这样做。
ScriptMain
。PreExecute
方法Input0_ProcessInputRow
方法中调用Web服务。请注意空值以及Web服务如何处理它们。我们的代码使用service.CompanyName = Row.CompanyName_IsNull ? string.Empty : Row.CompanyName;
如果您打算在控制流级别使用Web服务,请注意默认任务具有5分钟的硬编码超时。不确定是否仍然如此,但在我处理的2005包中,我们不得不使用直接的脚本任务与我们的web服务进行通信(它以批量方式清理数百万行地址数据)以绕过超时问题。 Reference超时属性