TFS 2015 API忽略了由
我有一个通过API创建和更改工作项的Web应用程序。我希望将“ChangedBy”字段设置为特定的字符串值。这在2013年TFS中运行良好。 升级到TFS 2015后,我的值将被忽略,并且ChangedBy始终设置为我用于连接到TFS的用户的标识 这是我的代码:TFS 2015 API忽略了由,api,workitem,tfs-2015,Api,Workitem,Tfs 2015,我有一个通过API创建和更改工作项的Web应用程序。我希望将“ChangedBy”字段设置为特定的字符串值。这在2013年TFS中运行良好。 升级到TFS 2015后,我的值将被忽略,并且ChangedBy始终设置为我用于连接到TFS的用户的标识 这是我的代码: //Set some values on the WorkItem item.Fields["ChangedBy"].Value = "MyUserName"; item.Save(); 有没有办法像TFS 2013那样强制执行该行为
//Set some values on the WorkItem
item.Fields["ChangedBy"].Value = "MyUserName";
item.Save();
有没有办法像TFS 2013那样强制执行该行为?根据这一点,默认情况下,“更改人”字段是不可编辑字段之一(由系统设置)。为了修改它,您需要在旁路规则模式下使用Workwith WorkItemStore对象。旁路规则允许您修改工作项字段而不受任何限制,因此您可以更改由更改的字段
将代码定义为:
TfsTeamProjectCollection tfctc = new TfsTeamProjectCollection(new Uri("http://servername:8080/tfs/DefaultCollection"));
WorkItemStore workItemStore = new WorkItemStore(tfctc, WorkItemStoreFlags.BypassRules);
WorkItem workItem = workItemStore.GetWorkItem(workitemid);
string changedBy = (string)workItem.Fields["Changed By"].Value;
workItem.Fields["Changed By"].Value = "User Name";
您是否也尝试过这样做?文档与我使用TFS 2013的经验不符。我可以把那个字段改成我想要的。它在TFS 2015中停止工作,所以可能他们修复了该错误。我不选择绕过规则,因为我想更改其他字段,并根据规则检查它们。