gpt4 book ai didi

asp.net-mvc-2 - UpdateModel() 的 ASP.Net MVC 2 RC 版本中是否存在错误?

转载 作者:行者123 更新时间:2023-12-01 00:04:33 25 4
gpt4 key购买 nike

我正在尝试实现 MVC 2 RC 版本,ASP.Net MVC 的最新版本,它无法在不抛出此异常的情况下执行简单的 Controller.UpdateModel(object):

无法更新类型为“[在此处插入更新对象的命名空间]”的模型。

无效操作异常

这是堆栈跟踪:

在 System.Web.Mvc.Controller.UpdateModel[TModel](TModel 模型,字符串前缀,字符串[] includeProperties,字符串[] excludeProperties,IValueProvider valueProvider)
在 System.Web.Mvc.Controller.UpdateModel[TModel](TModel 模型)
在 Ccis.Cgov360.Web.InternalApp.Controllers.AdminController.MailingLabelTypeSelected() 在 C:\Projects\Meadowlark\Development\Meadowlark\Applications\InternalApp\Controllers\AdminController.cs:line 1528
在 lambda_method(ExecutionScope , ControllerBase , Object[] )
在 System.Web.Mvc.ActionMethodDispatcher.Execute(ControllerBase Controller ,Object[] 参数)
在 System.Web.Mvc.ReflectedActionDescriptor.Execute(ControllerContext controllerContext, IDictionary 2 parameters)
at System.Web.Mvc.ControllerActionInvoker.InvokeActionMethod(ControllerContext controllerContext, ActionDescriptor actionDescriptor, IDictionary
2 个参数)
在 System.Web.Mvc.ControllerActionInvoker.<>c__DisplayClassd.b__a()
在 System.Web.Mvc.ControllerActionInvoker.InvokeActionMethodFilter(IActionFilter filter, ActionExecutingContext preContext, Func`1 continuation)

当我使用 MVC Preview 2 时,它可以正常运行并更新模型,没有抛出异常。我在别处看到RC版本有一个错误,这是同一回事吗?

我花了太多时间试图解决这个问题。我希望获得 RC 版本,以便我们可以开始使用 Html 帮助程序,例如 TextBoxFor<>、CheckBoxFor<> 等以及客户端验证。

最佳答案

要添加到 Levi's 评论,如果您捕获异常并返回 Edit View ,您应该看到验证失败的字段的验证消息,假设您的 View 包含:

<%= Html.ValidationMessageFor(model => model.name) %>

并且您的 Controller 编辑操作将包含...
     try {
UpdateModel(entity, new [] { "name", "address1", "address2", "city", "state", "zip" } );
TempData["Message"] = "Success";
return RedirectToAction("List");
}
catch {
TempData["Message"] = "Error saving form";
return View(entity);
}

关于asp.net-mvc-2 - UpdateModel() 的 ASP.Net MVC 2 RC 版本中是否存在错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2074255/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com