private static TaskMainDTO TaskMainToTaskMainDTO(ITask param)
        {
            TaskMainDTO target = new TaskMainDTO();

            target.TaskID = param.TaskID;
            target.TargetVersion = param.TargetVersion;
            target.Summary = param.Summary;
            target.SubtaskType = param.SubtaskType;
            target.Status = param.Status;
            target.Project = param.Project;
            target.Product = param.Product;
            target.Priority = param.Priority;
            target.Source = param.Source;
            target.Estimation = param.Estimation;
            target.Description = param.Description;
            target.CreatedDate = param.CreatedDate;
            target.CreatedBy = param.CreatedBy;
            target.Comments = param.Comments;
            target.TokenID = param.TokenID;
            target.LinkToTracker = param.LinkToTracker;

            if (param.TaskParent != null)
            {
                target.TaskParent = TaskMainToTaskMainDTO(param.TaskParent);
            }

            if (param.Assigned != null)
            {
                target.Assigned = UserToUserDTO(param.Assigned);
            }

            return target;
        }
        private static TaskMainDTO TaskMainToTaskMainDTO(ITask param)
        {
            TaskMainDTO target = new TaskMainDTO();

            target.TaskID        = param.TaskID;
            target.TargetVersion = param.TargetVersion;
            target.Summary       = param.Summary;
            target.SubtaskType   = param.SubtaskType;
            target.Status        = param.Status;
            target.Project       = param.Project;
            target.Product       = param.Product;
            target.Priority      = param.Priority;
            target.Source        = param.Source;
            target.Estimation    = param.Estimation;
            target.Description   = param.Description;
            target.CreatedDate   = param.CreatedDate;
            target.CreatedBy     = param.CreatedBy;
            target.Comments      = param.Comments;
            target.TokenID       = param.TokenID;
            target.LinkToTracker = param.LinkToTracker;

            if (param.TaskParent != null)
            {
                target.TaskParent = TaskMainToTaskMainDTO(param.TaskParent);
            }

            if (param.Assigned != null)
            {
                target.Assigned = UserToUserDTO(param.Assigned);
            }

            return(target);
        }