Esempio n. 1
0
        /// <summary>
        ///     Builds the work item.
        /// </summary>
        /// <param name="projectName">The project name.</param>
        /// <param name="workItemTypeName">Name of the work item type.</param>
        /// <param name="fieldValues">The field values.</param>
        /// <returns>IWorkItem.</returns>
        public IWorkItem BuildWorkItem(string projectName, string workItemTypeName, IReadOnlyList <KeyValuePair <string, object> > fieldValues)
        {
            Dictionary <string, object> dictionary = fieldValues.ToDictionary(field => field.Key, field => field.Value);

            IWorkItemStore          workItemStore = WorkItemStore();
            IProject                project       = workItemStore.Projects[projectName];
            IWorkItemTypeCollection workItemTypes = project.WorkItemTypes;
            IWorkItemType           workItemType  = null;

            foreach (IWorkItemType entry in workItemTypes)
            {
                if (entry.Name == workItemTypeName)
                {
                    workItemType = entry;
                }
            }

            var workItem = new WorkItem(WorkItemTypeWrapper.GetInstance(workItemType));

            foreach (KeyValuePair <string, object> pair in dictionary)
            {
                string fieldName  = pair.Key;
                object fieldValue = pair.Value;
                workItem[fieldName] = fieldValue;
            }
            return(WorkItemWrapper.GetWrapper(workItem));
        }