1

我有两个 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]

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

4

1 回答 1

1

我认为问题是您需要在Projects 集合中有一个 Packages 集合,以便包含的包知道它是项目部署模型的一部分。

<Projects>
    <PackageProject Name="Test">
        <Parameters>
            <Parameter Name="Foo" DataType="String">bar</Parameter>
        </Parameters>
        <Packages>
            <Package PackageName="MyPackage" />
        </Packages>
    </PackageProject>
</Projects>
于 2017-05-02T20:59:00.067 回答