Я создал приложение для опроса, как показано ниже:
Survey: ID,Name.
Question: ID,SurveyId,QuestionText,QuestionTypeId.
QuerstionType can be (Text, CheckBox, DropDown,RadioButton).
Как лучше всего дать каждому вопросу подходящий Html Helper во время выполнения.
В настоящее время я использую традиционный, еслиоператоры else.
if(QuestionModel.QuestionTypeId==QuestionTypes.Text)
{
@Html.editor()
}
else if(QuestionModel.QuestionTypeId==QuestionTypes.DropDown)
{
@Html.DropDownList()
}
else
{
...
}
и т. д.
Мне кажется, что я что-то не так делаю, есть ли способ настроить один помощник html так, чтобы он действовал по-другому в зависимости от типа вопроса.
Или, если я могу присоединить помощник html к модели представления и использовать его непосредственно в представлении, например, так:
Model.CustomDropdown.