Microsoft.TeamFoundation.*
-Namespacesを使用して、そのプログラムに TFS-VCS 統合を追加するプログラム用のプラグインを作成しました。
基本的には機能しますが、カスタム チェックイン ポリシーに問題があります
。プロジェクトに対してアクティブ化された 2 つのチェックイン ポリシーがあります。TFS Power Tools の ChangesetCommentPolicy と、私たちが作成したカスタム ポリシーです。どちらも Visual Studio と Shell Integration で動作しますが、プラグインで次のエラーが発生します。
変更セット コメント ポリシーの内部エラー。変更セット コメント ポリシー ポリシーの読み込み中にエラーが発生しました。インストール手順: このポリシーをインストールするには、CheckForComments.cs の手順に従います。
別のポリシー名を使用するだけで、カスタム ポリシーについても同じです。
ポリシー警告を取得する方法のコード スニペットを次に示します。
//CurrentWorkspace is Microsoft.TeamFoundation.VersionControl.Client.Workspace
CheckinEvaluationResult result = Manager.CurrentWorkspace.EvaluateCheckin(CheckinEvaluationOptions.Policies,
PendingChanges.ToArray(), changes.ToArray(), textBoxComment.Text, GetCurrentCheckinNotes(), GetSelectedWorkItems());
if (result.PolicyEvaluationException != null || result.PolicyFailures.Length > 0)
{
labelPolicyWarning.Text = "The following check-in policies have not been satisfied";
pictureBoxWarning.Visible = true;
foreach (PolicyFailure failure in result.PolicyFailures)
{
items.Add(failure);
}
if (result.PolicyEvaluationException != null)
items.Add(result.PolicyEvaluationException);
objectListViewPolicyWarnings.SetObjects(items);
}
else
{
labelPolicyWarning.Text = "All check-in policies are satisfied";
pictureBoxWarning.Visible = false;
}
プラグインにポリシーを「ロード」して実行できるようにするにはどうすればよいですか?
PS: プラグインの対象となるプログラムは FlashDevelop です。