#asp.net-mvc-3 #viewmodel
#asp.net-mvc-3 #viewmodel
Вопрос:
Я работаю над формой, и я в некотором замешательстве относительно того, как мне следует реализовать функцию добавления нового адреса. В идеале добавление нового адреса должно создавать новые входные данные для адреса на той же странице, а кнопка сохранить сохранит (либо добавит, либо обновит) всю информацию на странице.
Вот макет того, как будет выглядеть форма:
Прямо сейчас эта форма существует в строго типизированном представлении, которое имеет ViewModel, который выглядит следующим образом:
public class PersonInputViewModel
{
public string FirstName {get;set;}
public string LastName {get;set;}
public string MiddleName {get;set}
public AddressModel PrimaryAddress {get;set;}
public AddressModel SecondaryAddress {get;set;}
}
Теперь с этой моделью представления я действительно не знаю, как мне следует обрабатывать новое добавление адреса, поскольку прямо сейчас эта модель представления допускает только два адреса. Если бы я избавился от PrimaryAddress и SecondaryAddress и выбрал список AddressModels, как бы я приступил к созданию входных данных для адресов в представлении?
Комментарии:
1. В чем конкретно заключается ваш вопрос?
2. я немного отредактировал ее в надежде, что мой вопрос прояснится немного больше.
Ответ №1:
Возможно, следующий пост в блоге покажется вам полезным. Это еще более общее решение, поскольку оно применяется к списку объектов (не только к первичному и вторичному адресам), но концепция может быть такой же. Вы бы определили частичное представление, которое будет содержать необходимые поля для редактирования адреса, и когда пользователь решит добавить дополнительный адрес, используйте AJAX для ввода дополнительных полей в существующую форму.