Как определить префикс поля формы в ASP.NET MVC
Я пытаюсь сделать композитный ProductCatalog
посмотреть в ASP.NET MVC. Это требует, чтобы я сделал несколько Product
просмотров на странице. Каждый вид товара представляет собой отдельную форму. Мне нужно, чтобы поля формы имели префикс, основанный на идентификаторе, чтобы у меня не было дубликатов идентификаторов в отображаемом документе. Есть ли способ определить префикс, который будет применен ко всем полям формы, которые генерируются HTML-расширениями, или мне нужно создать его вручную?
1 ответ
Да, вы можете определить префикс для элементов управления в вашем представлении на основе выполняемого действия, рассмотрите следующий код, который должен быть помещен в ваш метод действия GET:
ViewData.TemplateInfo.HtmlFieldPrefix = "DESIRED_PREFIX";
это добавит требуемый префикс к вашим элементам управления View, но для того, чтобы иметь дело с ними назад, когда вы публикуете свою страницу, вам нужно будет переопределить префикс в подписи вашего действия POST следующим образом:
public ActionResult Create([Bind(Prefix = "DESIRED_PREFIX")] YOUR_ENTITY model)
Дайте мне знать, если это сработало, спасибо.