TFS work Конфликт редактирования элемента (ошибка TFS 237079) - PullRequest
2 голосов
/ 21 июля 2011

Кажется, что TFS не очень хорошо справляется с одновременным редактированием рабочих элементов. Мы столкнулись с двумя проблемными сценариями:

Сценарий A:

  1. Вы начинаете редактирование рабочего элемента.
  2. Во время редактирования кто-то другой редактирует и сохраняет тот же элемент.
  3. Когда вы пытаетесь сохранить, вы получаете ужасную ошибку TFS237079, которая означает, что вы должны потерять свои изменения, обновить элемент и отредактировать снова. хороший.

Сценарий B:

  1. У вас есть какой-то рабочий элемент, сфокусированный на некоторое время.
  2. Кто-то редактирует и сохраняет элемент.
  3. Когда вы начинаете редактирование, вы фактически редактируете устаревшую версию рабочего элемента и получаете TFS23709 при попытке сохранения.

Я хорошо знаком с TFS SDK (написал несколько TFS VS Addon и настраиваемые элементы управления рабочими элементами), но не могу найти что-то вроде события "BeforeEdit" для рабочего элемента.

Наличие такого события позволило бы мне предупредить пользователя о том, что кто-то еще в данный момент редактирует (для сценария A), и получить последнюю редакцию перед редактированием (для сценария B).

Спасибо, Равив.

1 Ответ

1 голос
/ 03 сентября 2011

Оптимистичный параллелизм - вот что это такое.Сервер не отслеживает, кто редактирует рабочие элементы, поэтому, если вы действительно хотите делать уведомления «Кто-то еще редактирует этот элемент», вам, вероятно, придется написать свои собственные сервисы и пользовательские элементы управления для их отслеживания.Вам также придется иметь дело с флагами редактирования, которые не выпускаются в случае сбоя Visual Studio, и с веб-интерфейсом.Если вы выберете этот путь, я желаю вам удачи!

...