Apr 282015
 

In den TFS Schulungen kam häufiger die Frage wie man ermitteln kann welche User einen Local oder Server Workspace verwenden. Seit TFS 2012 kann man pro Team Project Collection bestimmen ob die Benutzer standardmäßig einen Server oder Local Workspace anlegen. (Siehe https://msdn.microsoft.com/en-us/library/bb892960.aspx) Dies hindert jedoch niemanden selbst zu entscheiden welchen Workspace Typ man nutzen will. Jeder kann per Option in Visual Studio über „Manage Workspaces“->“Edit“->“Advanced“ selbst entscheiden welche Variante er bevorzugt.

Möchte man herausfinden welche Benutzer welchen Typ verwenden hilft ein wenig .NET Code:

  1. class Program
  2. {
  3.     static void Main(string[] args)
  4.     {
  5.         var teamProjectPicker = new TeamProjectPicker(TeamProjectPickerMode.NoProject, false);
  6.         teamProjectPicker.ShowDialog();
  7.         var teamProjectCollection = teamProjectPicker.SelectedTeamProjectCollection;
  8.         var versionControlService = teamProjectCollection.GetService<VersionControlServer>();
  9.         var workspaces = versionControlService.QueryWorkspaces(null, null, null);
  10.         foreach (var workspace in workspaces)
  11.             Console.WriteLine(„Workspace: {0}nComputer: {1}nOwner: {2}nLocation: {3}nn“,
  12.                 workspace.Name, workspace.Computer, workspace.OwnerDisplayName, workspace.Location);
  13.         Console.ReadKey();
  14.     }
  15. }

Nach der Verbindung zu einer Team Project Collection, werden von dieser alle Workspaces geholt. Danach erfolgt lediglich die Ausgabe von Workspace Name, Computer Name, Benutzer und eben der Location (Server / Local) auf der Console.

Das Beispiel gibt es auch hier zum Download.

 Leave a Reply

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

(required)

(required)