Sto cercando di utilizzare UpdateModel (myItem, FormCollection) con asp.net MVC 2 ma non riesce con l'analisi dello stack di seguito.ASP.NET MVC problema 2 con UpdateModel
at System.Web.Mvc.FormCollection.GetValue(String name)
at System.Web.Mvc.DefaultModelBinder.BindModel(ControllerContext controllerContext, ModelBindingContext bindingContext)
at System.Web.Mvc.Controller.TryUpdateModel[TModel](TModel model, String prefix, String[] includeProperties, String[] excludeProperties, IValueProvider valueProvider)
at System.Web.Mvc.Controller.TryUpdateModel[TModel](TModel model, IValueProvider valueProvider)
at Stormbreaker.Dashboard.Controllers.DashboardController`1.Update(FormCollection collection) in D:\Projects\SVN\Stormbreaker\trunk\Stormbreaker.Dashboard\Controllers\DashboardController.cs:line 23
at lambda_method(ExecutionScope , ControllerBase , Object[])
at System.Web.Mvc.ReflectedActionDescriptor.Execute(ControllerContext controllerContext, IDictionary`2 parameters)
at System.Web.Mvc.ControllerActionInvoker.InvokeActionMethod(ControllerContext controllerContext, ActionDescriptor actionDescriptor, IDictionary`2 parameters)
at System.Web.Mvc.ControllerActionInvoker.<>c__DisplayClassd.<InvokeActionMethodWithFilters>b__a()
at System.Web.Mvc.ControllerActionInvoker.InvokeActionMethodFilter(IActionFilter filter, ActionExecutingContext preContext, Func`1 continuation)
La mia azione è simile al seguente:
[AcceptVerbs(HttpVerbs.Post)]
[ValidateInput(false)]
public ActionResult Update(FormCollection collection) {
UpdateModel(CurrentItem, collection);
CurrentItem = (T)_repository.Update(CurrentItem);
return RedirectToAction("edit", new { pagePath = CurrentItem.UrlSegment });
}
... e la mia forma è simile al seguente:
<% using (Html.BeginForm("Update","Dashboard", FormMethod.Post, new { name = "editForm" })) %>
<% { %>
<div>
<%=Html.EditorForModel() %>
<input type="submit" value="Save" />
</div>
<% } %>
Quale eccezione viene lanciata? NRE? – alexn
Ecco l'eccezione: Il valore non può essere nullo o vuoto. Nome parametro: nome Descrizione: si è verificata un'eccezione non gestita durante l'esecuzione della richiesta Web corrente. Si prega di rivedere la traccia dello stack per ulteriori informazioni sull'errore e sulla sua origine nel codice. Dettagli eccezione: System.ArgumentException: il valore non può essere nullo o vuoto. Nome parametro: nome – Marcus
Si prega di inviare il modello. – jfar