->
(或->
)运算符在MSBuild中的作用是什么?
来自其他问题的一些示例代码:File Tracker Log file format
<!-- Appended tlog to track custom build events -->
<WriteLinesToFile
File="$(IntDir)$(ProjectName).write.1.tlog"
Lines="@(CustomBuildStep->'^%(Identity)');@(CustomBuildStep->MetaData('Outputs')->FullPath()->Distinct())"/>
加分问题:@(CustomBuildStep->'^%(Identity)')
在上述代码中做了什么?
答案 0 :(得分:10)
MSBuild中的->'^%(Identity)'
运算符是transformation operator。它通过使用原始项目的元数据替换右侧的字符串,将项目列表转换为新项目列表。
在task batching文档中部分描述了Identity
魔法。 %
元数据只是值本身,因此转换只是在&#34; ^&#34;之前。由于WriteLinesToFile
sigil,它还会导致批处理,因此对每个CustomBuildStep
项执行整个public class RootObject
{
public Person person { get; set; }
}
public class Person
{
public string name { get; set; }
public string country { get; set; }
public string city { get; set; }
public string phone { get; set; }
}
任务。