Строго типизированная ViewModel содержит неожиданное нулевое значение

У меня есть случай, очень похожий на этот, но следование советам в ответах моей проблемы не решает.

У меня есть ViewModel в приложении MVC 2, которое содержит другой класс. У меня есть контроллер, содержащий строго типизированный метод создания:

[Authorize]
[HttpPost]
public ActionResult Create(AIViewModel ai)
{

}

Когда я смотрю на ModelState, когда вхожу в метод Create, данные показывают, что простые свойства, присутствующие в классе AIViewModel, привязаны правильно, в то время как сложный тип, который там находится, выдает следующее сообщение об ошибке:

«Преобразование параметра из типа 'System.String' в тип 'xyz' завершилось неудачно, потому что преобразователь типов не может выполнять преобразование между этими типами».

Если я посмотрю на значение, которое он пытается привязать, он действительно имеет тип System.String и значение "Create". Кто-нибудь знает, что я делаю неправильно?

ОБНОВЛЕНИЕ: Я обнаружил проблему: свойство называется Действие, что каким-то образом обманывает привязщика моделей. Переименование собственности решило проблему.


person Bernie    schedule 22.01.2011    source источник
comment
опубликуйте свое мнение и код AIViewModel.   -  person Vadim    schedule 23.01.2011