У меня есть проект с использованием макетов страниц ASP.NET MVC и Razor. Эта страница будет опросом, чьи вопросы, типы данных и ответы были настроены пользователем администратора и извлечены из базы данных. Например:Form Поля, сгенерированные на основе переменных типов
public class ExampleViewModel
{
//the user define dquestion
public string Question1Text { get; set; }
//this is an enum with "Text","YesNo","DropDown"
public AnswerType Question1Type { get; set; }
//this would hold options for the drop down list
public string Question1Options { get; set; }
//the user input answer
public string Question1Answer { get; set; }
}
То, что я не уверен в том, как структурировать вид Razor создать соответствующий тип формы поля ввода в зависимости от AnswerType. Кажется, я кое-что вспомнил о создании шаблонов для различных аннотаций DataType(), но я не уверен, с чего начать смотреть на это, и если это применимо в этом случае?
Если его OK для группы каждого типа в представлении, то использование модели представления с тремя свойствами коллекции для каждого типа вопроса было бы проще всего. Обратите внимание, что вам понадобятся дополнительные свойства - 'bool' для ответа« Да/Нет »и' SelectList' для нескольких вариантов выбора –