protected override IEnumerable <WorkItemRelation> DoGetItems() { var wi = this.GetItem <WebApiWorkItem>(new { WorkItem = GetParameter <object>(nameof(GetWorkItemLink.WorkItem)), IncludeLinks = true }); var linkType = GetParameter <WorkItemLinkType>(nameof(GetWorkItemLink.LinkType)); var includeAll = (linkType == WorkItemLinkType.All); var includeAttachments = GetParameter <bool>(nameof(GetWorkItemLink.IncludeAttachments)); List <string> filteredTypes = LINK_TYPES.Where(kvp => includeAll || ((kvp.Key & linkType) == kvp.Key)).Select(kvp => kvp.Value).ToList(); if (includeAttachments) { filteredTypes.Add("AttachedFile"); } return(wi.Relations.Where(l => filteredTypes.Contains(l.Rel))); }
public Dictionary <string, string> GetLinkTypes() { const LinkType LINK_TYPES = LinkType.Web; return(LINK_TYPES.GetValueDictionary()); }