代码之家  ›  专栏  ›  技术社区  ›  PenFold

当传递给任务时,msbuild文件中的项是否保持其顺序?

  •  2
  • PenFold  · 技术社区  · 15 年前

    如果我在一个msbuild文件中创建一个项目列表,那么在传递给一个任务时,这些项目的顺序是否保持不变?

    例如,在itemgroup中指定数据库脚本文件的列表。然后我将此项组提供给自定义任务?订单是否有保证,或者订单是否可以更改?

    2 回复  |  直到 15 年前
        1
  •  2
  •   Brian    15 年前

    是的,msbuild维护项目列表的顺序 具有相同项目类型的 在项组中。(例如,所有“< 编译 在.fsproj事务中包含“…”>“,因为它指定了f项目文件中文件的顺序。)

        2
  •  1
  •   David McEwing    15 年前

    我相信这是维持秩序的。但是,根据项目组的创建方式,可能无法保证订单。

    为了更完整,您可能应该使用depends组构建脚本,以尝试按某种顺序获取它们,即引用数据插入依赖于依赖于模式脚本的存储过程脚本。您可以将每个项目定义为一个项目组,因此顺序是正确的。

    但是,如果您每次都以相同的方式构建它们,那么您可能可以安全地假定维护了订单。