public SearchQuery(IVsts vsts, CommandOption workItemStates, CommandOption tags, CommandArgument workItemTypeId, CommandOption myWorkItemOption) { ProjectName = vsts.ProjectName; State = workItemStates.AsStateDefault(); Tags = tags.HasValue() ? tags.Values : Enumerable.Empty <string>(); if (Int32.TryParse(workItemTypeId.Value, out int workItemId)) { QueryType = WorkItemQueryType.ById; WorkItemId = workItemId; } else { QueryType = WorkItemQueryType.ByType; WorkItemType = workItemTypeId.Value; } MyWorkItems = myWorkItemOption.HasValue(); AssignedTo = myWorkItemOption.HasValue() ? vsts.FullName : null; }