问题标签 [itaskitem]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
999 浏览

msbuild - MSBuild ITaskItem 数组已过期

我正在为 MSBuild 创建一个自定义 ITask,它会上传我的构建的输出文件。我正在使用 Web 部署项目来发布我的应用程序并连接到 AfterBuild 目标以完成我的自定义工作。

如果我将文件添加到我的 Web 应用程序,那么在我第一次进行构建时,我的自定义任务无法识别最近添加的文件。为了使该文件显示在我的 ITaskItems 数组中,我必须首先在删除“AfterBuild”目标的情况下进行构建,然后使用“AfterBuild”目标重新开始构建。

这是我的构建文件的样子:

@(PublishContent) 中的列表似乎是在构建开始时初始化的,而不是反映构建过程本身可能发生的任何更改。

有任何想法吗?

谢谢

0 投票
1 回答
1600 浏览

c# - 在 MSBuild 任务中生成代码

我正在创建一个将生成一个或多个文件的 MSBuild 任务,我有一个具有 ITaskItem[] 类型的 [输出] 属性的任务。我的问题是,我需要自己实现那个接口还是有一个我可以使用的类?

我希望它们成为编译任务项,这些任务项被添加到要编译的文件列表中。

0 投票
2 回答
4343 浏览

.net - 如何将数据传递给 MSBuild 任务的 ITaskItem 属性?

我有一个自定义任务,我在MSBuild中使用。效果很好。以前,我有一些属性可以接受一些string数据。有人建议我应该将它们更改为ITaskItem's. 这样,如果我有空间,我不应该有问题。

以前的代码

示例 msbuild 文件(例如 MsBuildSample.xml)...

请注意我是如何获得 4 个 css 文件的?我通过 , 或空格分隔符手动提取它们。科尔。

新代码

现在,我不确定我需要在 MSBuild 文件的 CssFiles 属性中设置哪些值。

有什么建议么?

0 投票
2 回答
935 浏览

msbuild - MSBuild ITaskItem RecursiveDir 元数据消失

我有一个自定义 MSBuild 任务,它处理一组文件并返回其中的修改子集。基本上,我只是从输入中创建一个新的 ITaskItem 数组,跳过一些项目。

但是,当此结果集返回到 MSBuild 时,RecursiveDir 元数据会消失!在我的自定义任务的 Execute() 方法结束时它仍然具有正确的值,但是当我尝试在 MSBuild 中使用 RecursiveDir 时,我发现它是空的!这当然是个大问题!

我应该怎么办?这是正常的吗?文件名和扩展名等其他元数据仍然存在。身份也指向正确的文件。我不会在我的自定义任务中以任何方式修改元数据。

我已经看到其他 MSBuild 任务库也返回 ITaskItem 数组而无需任何特殊处理。然而没有人遇到这个问题?奇怪!

我正在使用 MSBuild 3.5。

0 投票
1 回答
584 浏览

msbuild - MSBuild 从自定义任务参数中获取 %(RecursiveDir) 指令

我正在通过从基 Task 类继承来开发自定义 MSBuild 任务。我的任务调用在Microsoft.Build.Tasks.dll进程中设置 DestinationFolder 属性时声明的复制任务。我的自定义任务有一个名为 DestinationFolder 的属性声明为

从构建/项目文件中调用此任务时,我可能会传入一个参数,例如

我遇到的问题是,当此任务执行时,DestinationFolder 属性似乎不知道该%(RecursiveDir)位,而似乎只是设置为C:\Development\Test\Bin.

这个问题似乎表明这个问题没有解决方法。肯定是这样吗?我想知道是否可以将属性声明为一个简单的字符串,然后动态创建一个 TaskItem 对象,如果 DestinationFolder 字符串包含特殊%(RecursiveDir)指令,然后相应地设置 TaskItem 对象。

0 投票
1 回答
2159 浏览

msbuild - msbuild ITaskItem 输出

我正在尝试将MSBuild.ExtensionPack.Web.Iis7AppPool任务与 GetInfo 任务操作一起使用。该任务的输出参数是 SiteInfo 属性,它的类型是 ITaskItem。这是一个属性,而不是一个集合。

如何访问 SiteInfo 元数据?我可以用 $ 访问,但我能得到的只是网站名称。我尝试使用 %(SiteInfo.) 没有成功。

0 投票
1 回答
32 浏览

c# - 如何通过 inspetor 获取 TaskItem。获取要发送给其他人的 TaskItem。不是我自己的 TaskItem

我想制作一个 Outlook 插件来自动将附件文件制作为 ZIP 文件。现在,我必须获取 TaskItem 以使我发送给其他人的任务邮件只有 ZIP 附件文件。

我已经尝试了以下代码来获取TaskItems。但总是得到我自己发送的TaskItem。我发送给其他人的任务邮件还不是压缩文件。

希望有人可以帮助我。谢谢。