首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何从PropertyGroup访问目标的属性

如何从PropertyGroup访问目标的属性
EN

Stack Overflow用户
提问于 2018-06-19 04:21:09
回答 1查看 54关注 0票数 0

我正在尝试从PropertyGroup访问Foo Target的"VersionString“属性。有没有办法做到这一点?

代码语言:javascript
复制
<Target Name="Foo">
 <ItemGroup>
  <Assembly Include="Foo.exe" />
 </ItemGroup>

 <MSBuild.ExtensionPack.Framework.Assembly TaskAction="GetInfo" 
       NetAssembly="@(Assembly)">
   <Output TaskParameter="OutputItems" ItemName="Info"/>
 </MSBuild.ExtensionPack.Framework.Assembly>

 <MSBuild.ExtensionPack.Framework.TextString TaskAction="Substring" 
       OldString="%(Info.AssemblyVersion)" StartIndex="0" Count="5">
   <Output PropertyName="VersionString" TaskParameter="NewString"/>
 </MSBuild.ExtensionPack.Framework.TextString>
</Target>

<PropertyGroup>
 <FooVersion>
  $(VersionString)
 </FooVersion>
</PropertyGroup>
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-06-19 07:54:15

只有在目标和特定任务运行后,该属性才可用。

这意味着您只能在目标内的属性组中访问它,这些目标在创建属性的任务运行后运行。您的示例尝试从静态属性组访问它,静态属性组在运行任何目标之前都会进行评估,因此尚未设置该属性。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50916915

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档