TFSに特定のアーティファクトがあります。たとえば、変更セット「123」には、URI 「vstfs:/// VersionControl /Changeset/123」があります。リンク「http:// tfs:8080 / tfs / web / UI / Pages / Scc / ViewChangeset.aspx?changeset = 123」は、Webブラウザを使用してチェンジセットの詳細ビューを開くことに気付きました。
私がやりたいのは、ビジュアルスタジオ内のチェンジセット詳細ビューを開くことです。これを埋め込んでいる場所は、ビルドサマリー内のカスタムセクションです。このカスタムセクションをVisualStudioプラグインとして実装しました。これが写真です:
「リリースビルド」セクションはカスタムメイドであり、そのようなビルドがリリースされると、すべての人に送信される電子メールに関する情報を提供します。
このセクション内のチェンジセット627は、自動的にリンクに変換されたボタンコントロールです。ボタンの後ろにある「クリック」ハンドラーが機能します。現在、コードは次のようになっています。
...
string link = buildDetailView.TeamProjectCollection.Uri.AbsoluteUri.Substring(0, buildDetailView.TeamProjectCollection.Uri.AbsoluteUri.LastIndexOf('/'));
link += "/web/UI/Pages/Scc/ViewChangeset.aspx?changeset=";
link += ((Button)sender).Content;
Process.Start(new ProcessStartInfo(link));
e.Handled = true;
...
このコードは新しいブラウザタブを開き、正しいページを表示します。ただし、VisualStudio内でチェンジセットの詳細を開きたいのですが。「関連するチェンジセット」セクションの下部にあるボタンと同じように。「チェンジセット627」リンクをクリックすると、VisualStudio内でそのチェンジセットが開きます。
編集1
私がそれの写真を投稿するならば、それは正確に望ましい結果が何であるかについて少し明確かもしれません。「チェンジセットの詳細」ウィンドウは、APIを使用して開きたいものです。