MVC模型未成功更新但无法找到原因

Cop*_*ill 11 asp.net-mvc

这让我疯了.

我一直得到以下异常

System.InvalidOperationException:未成功更新"Models.Expense"类型的模型.在System.Web.Mvc.Controller.UpdateModel [TModel](TModel模型,String前缀,String [] includeProperties,String [] excludeProperties,IDictionary`2 valueProvider)在System.Web.Mvc.Controller.UpdateModel [TModel](TModel)模型)atMVC.Controllers.BaseExpenseController.Edit(String id,FormCollection集合)在C:\ Projects\Expenses.MVC\Controllers\BaseExpenseController.cs:第109行

但我无法追查为什么它没有更新,异常中没有任何内容表明为什么它没有更新.

有什么指针吗?

Ari*_*sky 15

捕获异常或调用TryUpdateModel.如果TryUpdateModel无法更新您的模型,它将不会抛出异常,它将返回false.您可以按照Craig的建议在ModelState中找到错误详细信息.事实上,UpdateModel只调用TryUpdateModel,如果返回false则抛出.


Cra*_*ntz 12

检查controller.ModelState并查找Errors> 0的条目.