public HttpResponseMessage Clone(string id, TodoItem item)
        {
            try
            {
                if (item == null ||
                    string.IsNullOrWhiteSpace(item.Name) ||
                    string.IsNullOrWhiteSpace(item.Notes))
                {
                    return(base.BuildErrorResult(HttpStatusCode.BadRequest, ErrorCode.TodoItemNameAndNotesRequired.ToString()));
                }

                var todoItem = todoService.Find(id);
                if (todoItem != null)
                {
                    todoService.CloneData(item);
                }
                else
                {
                    return(base.BuildErrorResult(HttpStatusCode.NotFound, ErrorCode.RecordNotFound.ToString()));
                }
            }
            catch (Exception)
            {
                return(base.BuildErrorResult(HttpStatusCode.BadRequest, ErrorCode.CouldNotCreateItem.ToString()));
            }

            return(base.BuildSuccessResult(HttpStatusCode.Created));
        }