У меня есть приложение ASP.NET MVC 2, которое меня попросили расширить.Я добавляю новую функцию на сайт, где я формирую форму оценки сотрудников, основанную на динамическом списке вопросов, полученных из нашей системы управления персоналом.У меня все работает, кроме проверки и публикации ответов на сайте.Вот некоторые подробности:
- Я получаю список «Вопросов» из нашей серверной системы с помощью вызова веб-службы.
- Каждый «Вопрос» также содержит текст для отображения.следующие параметры:
- Тип вопроса (соответствует текстовому полю, текстовой области, списку переключателей или списку флажков)
- Если комментарии разрешены
- Если требуется ответ
- Если применимо, список возможных ответов
Для создания формы я использую цикл for-each над списком вопросов.Я использую значение свойства QuestionType, чтобы определить, какое частичное представление нужно отобразить (по одному для каждого из типов).Например, если QuestionType == SingleChoice, этот частичный элемент отображает варианты выбора в виде списка переключателей.Если для вопроса разрешены комментарии, я также отображаю дополнительное поле textarea для хранения комментариев пользователя.
Как я уже говорил, визуализация формы работает нормально, но теперь мне нужно:
A,Применять, когда требуется ответ.Я использую DataAnnotations для проверки везде в решении, но поскольку я не работаю со статической моделью, я не понимаю, как я могу это сделать.
B.Опубликовать результаты обратно на сайт.Для каждого вопроса может быть текст, введенный в текстовое поле или текстовое поле, выбранное значение для списка переключателей или несколько выбранных значений для списка флажков.Кроме того, каждый вопрос может также иметь дополнительный текст, отправляемый обратно в виде комментария.
Все примеры, которые я видел при работе с динамическими «списками», касаются только публикации одного значения для каждого поля.и это всегда один и тот же тип (например, список текстовых полей).С вариантами, которые я должен поддержать, плюс необходимость отправить введенные / выбранные значения и комментарий для каждого вопроса, я в тупике.
Любые рекомендации приветствуются.