ローカル フォルダーに既にマップされている TFS ソース管理にソリューションがあるとしますSolutionFolder
。
こののサブフォルダーSubFolder
にいますSolutionFolder
。this のマップされたパスを取得する C# コードをどのように記述できSubFolder
ますか?
ローカル フォルダーに既にマップされている TFS ソース管理にソリューションがあるとしますSolutionFolder
。
こののサブフォルダーSubFolder
にいますSolutionFolder
。this のマップされたパスを取得する C# コードをどのように記述できSubFolder
ますか?
を使用しWorkStation.Current
て、問題のフォルダーの情報を取得します。
次の名前空間をインポートします。
using Microsoft.TeamFoundation.Client;
using Microsoft.TeamFoundation.VersionControl.Client;
次に、使用して、必要なデータにアクセスできます。
var workspace = Workstation.Current.GetLocalWorkspaceInfo(solutionFolder);
if (workspace != null)
{
var teamProjectUri = workspace.ServerUri;
// var server = TfsConfigurationServerFactory.GetConfigurationServer(teamProjectUri);
var projectCollection = TfsTeamProjectCollectionFactory.GetTeamProjectCollection(teamProjectUri);
var cssService = projectCollection.GetService<ICommonStructureService4>();
var project = cssService.GetProjectFromName(solutionName);
}
そこからワークスペースも簡単に取得でき、そこからサーバーパスを取得できます。workspace.GetWorkspace().GetServerItemForLocalItem()
資格情報を提供するには、CredentialsProvider
. デフォルトのプロバイダはUICredentialsProvider
. server
または、またはを呼び出すこともできprojectCollection
ますEnsureAuthenticated
。
以下も参照してください。