Получение ViewData.Model из поста шаблона искры

Я пытаюсь преобразовать свои искровые представления для использования ViewData.Model вместо коллекции namevalue, чтобы я мог использовать AutoMapper для сопоставления моих dto с объектами, прежде чем он попадет в мой метод действия.

Я могу получить доступ к viewdata.model из представления, но после отправки данных viewdata.model имеет значение null. вот пример кода:

на мой взгляд: <viewdata Message="string" model="MyDto" /> ${Model.Id} < -- displays MyDto.Id

В моем фильтре на сервере я пытаюсь сделать: var model = filterContext.Controller.ViewData.Model;

но ViewData.Model имеет значение null. Это во время OnActionExecuted. Есть ли способ заставить ViewData.Model получить значения из опубликованного представления?


person Sean Chambers    schedule 06.11.2009    source источник


Ответы (1)


Это не имеет ничего общего со Spark или AutoMapper. Вам необходимо изучить связыватели моделей MVC (например, здесь).

public ActionResult Action(MyDto dto)
{
   // here dto is filled with values - automatically - if you have corresponding input fields
}
person queen3    schedule 06.11.2009
comment
Я понял. Я некоторое время использовал asp.net mvc, а до этого монорельс. Я просто не знал, что ViewData.Model предназначен только для вывода. Раньше я использовал только словарь namevaluecollection для извлечения данных из представления. - person Sean Chambers; 06.11.2009