TFS Api 未在 Dev Azure 上的自定义流程模板中提供自定义状态

问题描述

我已在 Scrum 流程模板中添加了自定义状态,但在我基于该自定义流程模板创建新项目之前,API 不会提供新添加的状态。

enter image description here

每次我必须创建项目作为解决此问题的解决方案时。我该怎么做才能解决这个问题?

WorkItemStore workItemStore = this.tfsTeamProjectCollection.GetService<WorkItemStore>();

            int projectConunt = workItemStore.Projects.Count;

            for (int i = 0; i < projectConunt; i++)
            {
                WorkItemTypeCollection workItemTypeCollection = workItemStore.Projects[i].WorkItemTypes;

                for (int j = 0; j < workItemTypeCollection.Count; j++)
                {
                    string workitemType = workItemTypeCollection[j].Name;

                    for (int k = 0; k < workItemTypeCollection[j].FieldDefinitions.Count; k++)
                    {
                        Microsoft.TeamFoundation.WorkItemTracking.Client.FieldDefinition fieldDefinition =
                            workItemTypeCollection[j].FieldDefinitions[k];
                       
                        if (filedRefName == fieldDefinition.ReferenceName)
                        {
                            List<string> allowedValues = new List<string>();

                            foreach (var allowedValue in fieldDefinition.AllowedValues)
                            {
                                allowedValues.Add(allowedValue.ToString());
                            }

                            WorkItemFieldsInfo workItemFieldInfo = workItemFieldsInfo.Find(st => st.Type == workitemType);

                            if (workItemFieldInfo == null)
                            {
                                workItemFieldsInfo.Add(new WorkItemFieldsInfo()
                                {
                                    Type = workitemType,AllowedValues = allowedValues
                                });
                            }
                            else
                            {
                                List<string> unionFields = workItemFieldInfo.AllowedValues.Union(allowedValues).ToList();
                                workItemFieldInfo.AllowedValues = unionFields;
                            }

                            break;
                        }
                    }
                }
            }

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)