1

当我使用 biml 生成一个引用项目级连接管理器的包时,我遇到了问题。找不到 OleDb 源的连接管理器,但在 SQL 任务中工作正常。此外,包级连接管理器工作正常。

这是示例代码:

<Biml xmlns="http://schemas.varigence.com/biml.xsd">
    <Connections>
        <OleDbConnection Name="sql" ConnectionString="data source=.;initial catalog=Staging;Provider=SQLNCLI11.1;Integrated Security=sspi;" />
    </Connections>
    <Projects>
        <PackageProject Name="Test">
            <Packages>
                <Package PackageName="MyPackage2"/>
            </Packages>
            <Connections>
                <Connection ConnectionName="sql"/>
            </Connections>
        </PackageProject>
    </Projects>
    <Packages>
        <Package Name="MyPackage2">
            <Tasks>
                <ExecuteSQL Name="TestSQL" ConnectionName="sql">
                    <DirectInput>
                        Select 1
                    </DirectInput>
                </ExecuteSQL>
                <Dataflow Name="My Dataflow">
                    <Transformations>
                        <OleDbSource Name="Read" ConnectionName ="sql">
                            <DirectInput>
                                Select 1 as Test;
                            </DirectInput>
                        </OleDbSource>
                    </Transformations>
                </Dataflow>
            </Tasks>
        </Package>
    </Packages>
</Biml>

生成 OleDbSource 时出现以下错误:

验证错误。我的数据流读取 [2]:找不到 ID 为“{6253281E-98BA-45C3-ACAB-BC58B34CC627}”的运行时连接管理器。验证连接管理器集合是否具有具有该 ID 的连接管理器。

我尝试了许多没有帮助的不同方法:

  • 将连接管理器的 CreateInProject 设置为 true
  • 使用的连接以及 OleDbConnection
  • 将 Connections 集合添加到包中并引用了连接

我错过了什么?

4

1 回答 1

1

我复制了粘贴的 BIML,它生成了所有文件而没有错误。当我进行更改并重新生成文件时,我收到了与您相同的错误消息。

为了解决这个问题,我手动删除了连接管理器,然后重新生成了文件。我不确定是什么导致了这种情况发生,但这是一个可靠的解决方法,可以让包再次工作。

于 2017-05-03T14:41:19.530 回答