gpt4 book ai didi

MSBuild 任务可以接受原始数组,但是如何编写一个数组来传递到任务中呢?

转载 作者:行者123 更新时间:2023-12-02 14:12:24 24 4
gpt4 key购买 nike

我猜它必须是一个 ITaskItem,因为它是一个向量而不是标量,我 table 上只有两本 MsBuild 书,而且我找不到如何将数组传递给任务。我想做一个字符串数组,但我想知道适用于任何原始类型的正确方法。

如何将字符串(或整数)数组传递给 MsBuild 任务?

最佳答案

MSBuild 任务可以接受ITaskItem、原语、字符串或任何这些参数的数组。您只需在任务中声明类型,然后值将在传递给任务之前进行转换。如果该值无法转换为类型,则会引发异常并停止构建。

例如,如果您有一个任务接受名为 Values 的 int[] ,那么您就可以这样做。

<Target Name="MyTarget">
<MyTask Values="1;45;657" />
<!-- or you can do -->
<ItemGroup>
<SomeValues Include="7;54;568;432;79" />
</ItemGroup>

<MyTask Values="@(SomeValues) />
</Target>

这两种方法本质上是相同的。其他答案指出所有参数都是字符串或您必须使用 ITaskItem 是不正确的。

你说你有两本关于 MSBuild 的书,那么我想一本是我的 Inside the Microsoft Build Engine本书中,您应该阅读有关自定义任务的章节,以便充分掌握这些主题。有一节专门解释了参数类型。

关于MSBuild 任务可以接受原始数组,但是如何编写一个数组来传递到任务中呢?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3927597/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com