У меня есть опыт работы с формами ASP.NET, но новый для MVC.ASP.NET MVC 3 Razor- Получить данные из настраиваемого редактора
Как я могу получить данные из общих просмотров при обратной передаче?
В ASP.NET Forms я могу написать что-то вроде этого:
ASP.NET Forms: код
Модель:
public class MyModelItem
{
// Just TextBox is enough for editing this
public string SimpleProperty { get; set; }
// For this property separate NestedItemEditor.ascx is required
public MyModelNestedItem ComplexProperty { get; set; }
}
public class MyModelNestedItem
{
public string FirstProperty { get; set; }
public string SecondProperty { get; set; }
}
Поведение:
Управление для редактирования MyModelNeste dItem является отдельным элементом управления ASCX. NestedItemEditor.ascx
Это, например, может быть намного сложнее, чем MyModelNestedItem, я просто хочу дать представление о том, что я имею в виду.
Теперь, когда я показываю этот элемент для редактирования, я показываю один asp: TextBox и один NestedItemEditor.ascx. На обратной стороне страницы я собираю данные от обоих и все.
Проблема с MVC:
Когда я пытаюсь реализовать этот сценарий с MVC, я использую индивидуальные EditorFor (за счет использования UIHint и создания общего взгляда). Итак, этот общий вид Views \ Shared \ EditorTemplates \ MyModelNestedItem.cshtml теперь может отображать данные, уже находящиеся в свойстве MyModelNestedItem, но я не знаю, как заставить его возвращать новые введенные данные.
Когда родительский контроллер получает запрос на отправку, данные, по-видимому, находятся в Request.Form, но который является цивилизованным способом его достижения? Разумеется, лучшее решение будет, если данные будут автоматически загружаться в файл 0M122.