Использование клиентской объектной модели TFS, чтобы узнать, кто в данный момент извлек файл

Я использую версию клиентской объектной модели TFS 2012 года для получения некоторой информации о файлах в репозиториях. Учитывая строку, указывающую путь к файлу в проекте TFS, я хотел бы узнать, кто извлек файл, если он заблокирован. Я использую VersionControlServer.GetItems(...).Items и предикат Where для получения только тех файлов (не папок), которые мне интересны.


person gdoug    schedule 11.02.2014    source источник
comment
Я считаю, что проще просто посмотреть в Visual Studio и TFS, чтобы узнать, у кого файл извлечен или заблокирован. Пробовали ли вы смотреть на: msdn.microsoft.com/en-us/library/ bb138911.aspx (все остальные GetItems(...) можно найти здесь: msdn.microsoft.com/en-us/library/)   -  person Alicia    schedule 12.02.2014
comment
Мне нужно сделать это программно. Это для проекта, а не только для моего собственного управления кодом. :)   -  person gdoug    schedule 12.02.2014


Ответы (1)


QueryPendingSets твой друг!

Образец:

PendingSet[] queryPendingSets = versionControlServer.QueryPendingSets(new [] {"$/A/B/C.txt"},RecursionType.None, null, null );

Здесь перечислены все ожидающие изменения для указанного файла. Вы можете получить их все, посмотрев:

queryPendingSets[0].PendingChanges
person Scordo    schedule 13.02.2014
comment
Вот и все! queryPendingSets[0].OwnerName это именно то, что я хотел. :) - person gdoug; 14.02.2014