При создании формы с моделью, содержащей объекты. Большинство из них имеют поле Id.MVC4 Решение для названий полей дубликатов формы
Если вы используете @ Html.HiddenFor() для отображения этих полей, то все они имеют то же имя, что и Id.
Мы попробовали использовать @ Html.Hidden() и указать уникальное имя как «ApplicantId» или «AddressId». Но тогда свойства Id не установлены на модели, когда они вернутся к контроллеру.
Итак, вопрос заключается в том, как использовать @ Html.Hidden() с пользовательскими именами и вернуть их в правильное поле при отправке формы?
public class PersonView {
public long Id { get; set; }
}
Мы хотим использовать
@Html.Hidden("ApplicantId", Model.Id)
Но тогда структура не отображает поле формы ApplicantId в поле PersonView.Id, когда он получает обратно к контроллеру.
Это имеет смысл, поскольку имя ApplicantId не соответствует ни одному из свойств объекта PersonView. Есть ли атрибут для украшения свойства PersonView.Id, чтобы указать более уникальное имя?
Пожалуйста, разместите некоторые из ваших классов C#, которые имеют свойства 'Id' и как они соотносятся друг с другом! – nemesv
@nemesv Добавлены фрагменты кода. – Wayne
Просьба опубликовать всю модель ViewModel. Я думаю, лучше исправить вашу проблему с корнем, а не пытаться заставить фрейм принять разные идентификаторы, чтобы сделать привязку. – Romias