Динамически добавлять входы для просмотра свойств - PullRequest
1 голос
/ 01 декабря 2011

К сожалению, я относительно новичок в MVC, поэтому то, что я пытаюсь сделать, может быть довольно простым или даже невозможным в MVC.

У меня есть серия классов шаблонов в библиотеке, в которую можно добавить шаблон, изменить или удалить между версиями.То, что я пытаюсь сделать, это создать страницу, которая позволит пользователю выбрать из выпадающего списка, какой шаблон он хочет работать, а затем, после того, как он выбрал шаблон, можно будет заполнять свойства шаблона через текстовые поля., выпадающие списки, селекторы даты и т. д.

Хотя теоретически я мог бы создать представление для каждого из различных шаблонов, я хотел бы избежать этого, как если бы шаблоны можно было добавлять / изменять / удалять с более новыми версиямибиблиотеки, я хотел бы избежать переписывания представлений каждый раз, когда это происходит.

Есть ли у кого-нибудь какие-либо предложения о том, как мне этого добиться, или о существующих ссылках, обсуждающих это?

Если я пропустил какую-либо информацию, которая будет полезна, пожалуйста, дайте мне знать.

Спасибо за любую помощь / совет заранее.

Сатал

1 Ответ

0 голосов
/ 29 февраля 2012

Без написания кода вам нужен компонент, который создает html на основе того, какая модель / объект передается для удовлетворения населения этой модели через веб-браузер.

Смею сказать, что это возможно!

Простой или более легкий маршрут будет:

  1. Украсьте свойства в ваших шаблонных моделях атрибутами, которые бы определяли, какой тип управления вводом им требуется.

  2. Также украсьте свойства атрибутом, который указывает имя атрибута.

  3. Создайте компонент, который принимает модель / тип и создает HTML, чтобы удовлетворить ввод этого типа. Конечно, это должно быть представлено в форме.

  4. При отправке / отправке вашего действия используйте Request["{propertyName}"], чтобы получить значение полей ввода для заполнения свойств.

  5. Ваше действие контроллера примет имя Template, чтобы вы знали, какую модель создать

System.ComponentModel.DataAnnotations - хорошее место для начала, прежде чем писать свои собственные атрибуты.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...