C# 是否有一种处理方法;“任何文件”;在Azure Data Lake存储上使用SSI?
我有正在运行的SSIS脚本,可以从Data Lake加载Json文件。 但是名为“Azure Data Lake Store Source Editor”的SSIS组件不接受来自变量的文件名,只接受硬编码。 由于我无法控制在Data Lake上创建新文件,因此每次登录新文件时,我都必须更改SSIS脚本 我知道SSIS允许您以编程方式在脚本组件内访问连接管理器组件(我使用它来解析Json文件) 我可以使用SSIS变量获取数据湖存储库中每个组件的所有文件名。我可以在脚本组件中调用该变量 我要做的是以编程方式用变量中的文件名覆盖“源代码编辑器”的硬编码文件名 我也知道我可以用USQL实现这一点,但这是一条完全不同的开发路径。我把它留到最后 我很感激任何正确方向的指导C# 是否有一种处理方法;“任何文件”;在Azure Data Lake存储上使用SSI?,c#,ssis,azure-data-lake,C#,Ssis,Azure Data Lake,我有正在运行的SSIS脚本,可以从Data Lake加载Json文件。 但是名为“Azure Data Lake Store Source Editor”的SSIS组件不接受来自变量的文件名,只接受硬编码。 由于我无法控制在Data Lake上创建新文件,因此每次登录新文件时,我都必须更改SSIS脚本 我知道SSIS允许您以编程方式在脚本组件内访问连接管理器组件(我使用它来解析Json文件) 我可以使用SSIS变量获取数据湖存储库中每个组件的所有文件名。我可以在脚本组件中调用该变量 我要做的是以
谢谢。我无法对此进行测试,但您应该能够在数据流级别而不是组件级别对数据源组件进行参数化 如果您在属性中查找包含Azure Data Lake Store源组件的数据流,您应该会看到一个名为
Expressions
的属性值集合,您可以在其中通过变量设置组件级属性值
有此过程的摘要。谢谢!我测试了您的解决方案,然后又花了两天时间发现我还需要将DelayValidation属性设置为True(我想是因为Data Lake)。但它现在工作得很好。@EnisAkin我认为您不必设置
DelayValidation
。如果组件中有一个查询字符串在数据流中是有效的,那么它应该对此进行验证,并对构建感到满意。如果不可能,那么您可能需要延迟验证。