У меня есть случай, который очень похож на это , но следование советам в ответах не решает мою проблему.
У меня есть ViewModel в приложении MVC 2, которое содержитдругой класс.У меня есть контроллер, который содержит строго типизированный метод создания:
[Authorize]
[HttpPost]
public ActionResult Create(AIViewModel ai)
{
}
Когда я смотрю на ModelState при входе в метод Create, данные показывают, что простые свойства, которые присутствуют в классе AIViewModel, связаныправильно, в то время как сложный тип, который там находится, терпит неудачу со следующим сообщением об ошибке:
"Преобразование параметра из типа 'System.String' в тип 'xyz' завершилось неудачно, потому что никакой преобразователь типа не может преобразоватьэти типы. "
Если я посмотрю на значение, которое оно пытается связать, оно действительно имеет тип System.String и значение " Create ".Кто-нибудь знает, что я могу делать неправильно?
ОБНОВЛЕНИЕ: Я обнаружил проблему: свойство называется Действие , что каким-то образом обманывает связыватель моделей.Переименование имущества решило проблему.