无法跨 BIML 文件引用项目参数
Cannot reference Project Parameter across BIML Files
我有两个 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>
但是,当我尝试生成包时出现以下错误:
Variable @[$Project::Foo] was not found
是否可以跨文件引用项目参数?
我认为问题是您需要在 中有一个 Packages 集合,以便包含的包知道它是项目部署模型的一部分。
<Projects>
<PackageProject Name="Test">
<Parameters>
<Parameter Name="Foo" DataType="String">bar</Parameter>
</Parameters>
<Packages>
<Package PackageName="MyPackage" />
</Packages>
</PackageProject>
</Projects>
我有两个 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>
但是,当我尝试生成包时出现以下错误:
Variable @[$Project::Foo] was not found
是否可以跨文件引用项目参数?
我认为问题是您需要在
<Projects>
<PackageProject Name="Test">
<Parameters>
<Parameter Name="Foo" DataType="String">bar</Parameter>
</Parameters>
<Packages>
<Package PackageName="MyPackage" />
</Packages>
</PackageProject>
</Projects>