Modificación de permissions en files / elementos en el control de versiones mediante la API TFS

Utilizando la API de TFS, necesito cambiar los permissions en un file / elemento especificado en el control de la versión. Necesito editar permissions para un usuario en particular o para todos los usuarios.

Por ejemplo, mi aplicación evitará el logging de un file específico para todos los usuarios. Luego, permitiría el logging de ese file para un usuario en particular, realizaría el logging del file y luego permitiría el check-in nuevamente para todos los usuarios.

¿Cómo puedo hacer esto? Por favor proporcione un código de ejemplo.


Con la orientación de Vicky Song en Microsoft (http://social.msdn.microsoft.com/Forums/en-US/tfsversioncontrol/thread/289fb1f4-4052-41f1-b2bf-f97cd6d9e389/), esto es lo que terminé con:

public void SetCheckInLockForFile(string fileAndPath, string userGroup, bool checkInLock) { // sets of the CheckIn permission for the specified file List<SecurityChange> changes = new List<SecurityChange>(); string[] perm = new string[] { PermissionChange.ItemPermissionCheckin }; if (checkInLock) changes.Add(new PermissionChange(fileAndPath, userGroup, null, perm, null)); else changes.Add(new PermissionChange(fileAndPath, userGroup, null, null, perm)); SecurityChange[] actualChanges = versionControlServer.SetPermissions(changes.ToArray()); } 

Cuando CheckInLock es verdadero, se agrega un permiso de denegación para el check in. Cuando CheckInLock es falso, se elimina el permiso de input, lo que permite que se henetworkinge el permiso de verificación para el file especificado.