public static IQueryable<Tracker.Core.Data.TaskExtended> ByTaskId(this IQueryable<Tracker.Core.Data.TaskExtended> queryable, int taskId, params int[] additionalValues)
        {
            var taskIdList = new List<int> { taskId };

            if (additionalValues != null)
                taskIdList.AddRange(additionalValues);

            if (taskIdList.Count == 1)
                return queryable.ByTaskId(taskIdList[0]);

            return queryable.ByTaskId(taskIdList);
        }
        public static IQueryable<Tracker.Data.Entities.TaskExtended> ByTaskId(this IQueryable<Tracker.Data.Entities.TaskExtended> queryable, System.Int32 taskId, params System.Int32[] additionalValues)
        {
            var taskIdList = new List<System.Int32> { taskId };

            if (additionalValues != null)
                taskIdList.AddRange(additionalValues);

            if (taskIdList.Count == 1)
                return queryable.ByTaskId(taskIdList[0]);

            return queryable.ByTaskId(taskIdList);
        }
        public static IQueryable<Tracker.Core.Data.Audit> ByTaskId(this IQueryable<Tracker.Core.Data.Audit> queryable, int? taskId, params int?[] additionalValues)
        {
            var taskIdList = new List<int?> { taskId };

            if (additionalValues != null)
                taskIdList.AddRange(additionalValues);
            else
                taskIdList.Add(null);

            if (taskIdList.Count == 1)
                return queryable.ByTaskId(taskIdList[0]);

            return queryable.ByTaskId(taskIdList);
        }