【发布时间】:2014-02-27 17:25:34
【问题描述】:
我正在寻找一种方法来识别我一直在编写的包中未使用的连接。我没有看到一种方法来检查每个设计表面的使用情况,而且似乎没有任何类型的构建警告或“SSIS 的 fxcop”会在构建时标记它们。在 technet 上搜索很嘈杂,似乎没有产生任何相关信息。有没有办法自动执行此操作,或者我是否必须通过连接交叉引用我的所有源和目标?
【问题讨论】:
-
有点乏味,但是如果您查看 SSIS XML“代码”,您会发现 DTS:ConnectionManager 节点。每个连接都有一个 DTSID。如果您在文件的其余部分中搜索该特定 DTSID 的任何引用,但找不到任何引用,则很可能它没有被使用。到目前为止,我看到的所有使用连接的项目都是指使用“connectionManagerID="{DTSID}"”属性的连接。这可能会成为一个有趣的小验证器工具/插件......
-
这是迄今为止我找到的最好的回应。如果你想把它作为答案,我很乐意为你效劳。
-
谢谢 - 我还没有找到任何替代方案,并不断求助于这种技术。包不应该使用 EncryptAllWithPassword(不确定 UserKey),否则都是胡言乱语。
-
当我在 Visual Studio 中打开解决方案时,出现错误:错误 1 加载 packagename.dtsx 时出错:找不到连接 %GUID%。当未找到特定连接元素时,Connections 集合会引发此错误。 %path%\packagename.dtsx 1 1 在我的例子中,我删除了日志文件的连接对象,但没有删除项目设计视图 >> SSIS(菜单)>> 日志(菜单选项)中的连接