Я не совсем уверен, как использовать ViewModels, поэтому мне нужна помощь по следующей проблеме:
Я создаю онлайн-опрос.Пользователь может создать вопрос с несколькими вариантами ответов.Объекты домена, которые я использую для этого, следующие:
[Question]
int category_id { get; set; } // The category the question belongs to
int type_code { get; set; } // The type of question (I.E Multiple Choice)
string question_wording { get; set; } // The question itself
bool visible { get; set; } // Visiblity
int question_number { get; set; } // The number of the question
string help_text { get; set; } // Help text if the user doesnt understand the question
[Multiple_Choice_Question]
int choice_number { get; set; } // The order in which the MCQ answer possibility is shown
int choice_wording { get; set; } // The MCQ answer possibility
string help_text { get; set; } // help_text if the user doesnt understand the answer possibility
// This is a cross-reference table in my database that maps questions with choice possibilities
[Ref_Multiple_ChoiceAnswer]
int question_id { get; set; }
int mcq_id { get; set; }
В моем представлении мне нужно иметь возможность создавать вопрос и возможности выбора (Multiple_Choice_Question) одновременно.Пользователь записывает варианты выбора в текстовом поле, каждое из которых разделено новой строкой.
подобно
Cat
Dog
Mouse
Теперь, когда я работаю с двумя сущностями, я должен просто поместить все необходимые свойства в свойViewModel?Каждая возможность ответа является новой строкой в моей базе данных, и в представлении она отправляется обратно в виде строки (текст в текстовом поле) - как мне решить эту проблему?
Как использовать AutoMapper на [HttpPost], чтобы связать свойства из Вопроса с новым Объектом Вопроса и возможности ответа с Объектом Multiple_Choice_Question.Кроме того, каков наилучший способ отобразить эти два новых объекта в таблицу Ref_Multiple_ChoiceAnswer?
Заранее спасибо