无法跨BIML文件引用项目参数

时间:2017-05-02 19:04:38

标签: ssis biml

我有两个biml文件:

  • BimlScript.biml - 定义项目参数
  • BimlScript1.biml - 尝试在表达式中使用它。

BimlScript.biml:

<Biml xmlns="http://schemas.varigence.com/biml.xsd">
    <Projects>
        <PackageProject Name="Test">
            <Parameters>
                <Parameter Name="Foo" DataType="String">bar</Parameter>
            </Parameters>
        </PackageProject>
    </Projects>
    <Packages>
        <#@ include file="BimlScript1.biml"#>
    </Packages>
</Biml>

BimlScript1.biml:

<Package Name="MyPackage">
    <Variables>
        <Variable Name="TestVariable" DataType="String" EvaluateAsExpression="true">
           @[$Project::Foo]
        </Variable>
    </Variables>
</Package>

但是,当我尝试生成包时,我收到以下错误:

  

未找到变量@ [$ Project :: Foo]

是否可以跨文件引用项目参数?

1 个答案:

答案 0 :(得分:1)

我认为问题是您需要在Projects collection内为所包含的包提供一个Packages集合,以了解它是项目部署模型的一部分。

<Projects>
    <PackageProject Name="Test">
        <Parameters>
            <Parameter Name="Foo" DataType="String">bar</Parameter>
        </Parameters>
        <Packages>
            <Package PackageName="MyPackage" />
        </Packages>
    </PackageProject>
</Projects>