public static ResponseEF ToEF(this ResponseTO response)
        {
            if (response is null)
            {
                throw new ArgumentNullException(nameof(response));
            }

            var answer = new ResponseEF
            {
                Id                  = response.Id,
                Grade               = response.Grade,
                MultiChoices        = response.MultiChoices,
                Question            = response.Question.ToEF(),
                Text                = response.Text,
                QuestionProposition = response.QuestionProposition?.ToEF(),
                Comment             = response.Comment?.ToEF(),
                Submission          = response.Submission.ToEF()
            };

            if (answer.Comment != default(CommentEF))
            {
                answer.Comment.Response = answer;
            }

            return(answer);
        }
        public static ResponseTO ToTransfertObject(this ResponseEF response)
        {
            if (response is null)
            {
                throw new ArgumentNullException(nameof(response));
            }

            return(new ResponseTO
            {
                Id = response.Id,
                Form = response.Form.ToTransfertObject(),
                Question = response.Question.ToTransfertObject(),
                ResponseOpened = response.ResponseOpened,
                Choices = response.Choices?.Select(x => x.ToTransfertObject()).ToList(),
            });
        }
        public static ResponseTO ToTransfertObject(this ResponseEF response)
        {
            if (response is null)
            {
                throw new ArgumentNullException(nameof(response));
            }

            return(new ResponseTO
            {
                Id = response.Id,
                Grade = response.Grade,
                MultiChoices = response.MultiChoices,
                Question = response.Question.ToTransfertObject(),
                Text = response.Text,
                QuestionProposition = response.QuestionProposition?.ToTransfertObject(),
                Comment = response.Comment?.ToTransfertObject(),
                Submission = response.Submission.ToTransfertObject(),
            });
        }