1

TFS 2013 で TFS テンプレートのカスタム アクティビティを開発しようとして問題が発生しました。私の最初のステップは、ビルドに関連付けられた変更セットを取得することです。そして、多くの試みとグーグルの後、私はいつも同じ問題を抱えています:私のリストは空です. 私の最後の試みは、この記事からです: http://www.colinsalmcorner.com/post/tfs-2013-default-build--the-getenvironmentvariablet-activity

何を試しても、カスタム アクティビティでは常に何もありません。

public sealed class ChangeLogActivity : CodeActivity<IList<Changeset>>
{
    [RequiredArgument]
    public InArgument<IList<Changeset>> AssociatedChangesets { get; set; }

    protected override IList<Changeset> Execute(CodeActivityContext context)
    {
        IList<Changeset> list = context.GetValue(this.AssociatedChangesets);
        // list is empty, but not null
    }
}

私のテンプレートでは、それは私が得たものです:

テンプレート

次に、私の変数、

変数

次に、GetEnvironmentVariable タスクのプロパティ

財産

そして最後に私の活動の特性

カスタム アクティビティ

何が欠けているのかわからない。さらに、それが関連しているかどうかはわかりません。私の TrackBuildWarning でさえ何もしません。私のコンテキストは良いものではないと思いましたが、それを確認するにはどうすればよいですか?

4

1 に答える 1

0

質問を投稿した直後に答えが見つかることを知っていました。簡単に言うと、成功した 2 つのビルドの間にチェックインが行われなかった場合、AssociatedChangesetは常に空になります。

ビルド表示が非常にトリッキーな理由は理解できます。上部に「関連する変更セット 14を使用して blabla によってビルドが開始されました」と表示されます。

ですから、私はいつでもこの情報を取得できると誤解していました...

于 2015-06-25T15:15:10.400 に答える