首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >UpdateModel引发异常

UpdateModel引发异常
EN

Stack Overflow用户
提问于 2010-10-26 15:14:48
回答 1查看 239关注 0票数 0

我有一个强类型视图模型和一个MetaData分部类,该类具有必需字段和字段类型的注释属性。Create.aspx视图页面有一个表单,当提交时将执行控制器中的Create方法。当用户在没有输入所有必需字段的情况下提交表单时,在到达UpdateModel()行时会抛出异常。但是,未显示带注释的字段中指定的任何错误消息。相反,执行遍历RuleViolation()并到达最通用的异常消息。因此,用户不知道某些必填字段没有被输入。如果我在RuleVilolation()方法中定义了If empty of required字段的检查,那么它就不是DRY。有人知道为什么MetaClass没有显示错误消息吗?谢谢。

代码语言:javascript
复制
///Controller method
[AcceptVerbs(HttpVerbs.Post)]
[ValidateInput(false)]
public ActionResult Create(string id, [Bind(Prefix = "Transfer")]TransferFormViewModel newTransferViewModel, string cancel)
{
  ....
  if (ModelState.IsValid)
  {
      Transfer newTransfer = new Transfer();

      if (ModelState.IsValid)
      {
        try
          {
            Person person = base.ApplicaitonRepository.GetPerson(intID);
            UpdateModel<Transfer>(newTransfer, "Transfer");
            .....
          }
        catch (Exception ex)
          {
            newTransfer.MiscException = ex;
            HelpersLib.ModelStateHelpers.AddModelErrors(this.ModelState, newTransfer.GetRuleViolations());
          }
      }
   }
   return View(new TransferFormViewModel(base.ApplicaitonRepository, newTransfer));
}

///partial domain objec class
[MetadataType(typeof(TransferMetaData))]
public partial class Transfer
{
  public IEnumerable<RuleViolation> GetRuleViolations()
  {
    ....
  }
}

///MetaData class
class TransferMetaData
{
[Display(Name="List Type")]
public int ListType { get; set; }

[Required(ErrorMessage = "Notification Date/Time is required."), Display(Name = "Notification Date/Time")]
        public DateTime AddedToListDate { get; set; }

[Required(ErrorMessage="Admit Date/Time is required."), Display(Name="Admit Date/Time")]
...
}
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2010-10-26 20:32:38

您的视图中是否有<%= Html.ValidationSummary() %>?

您的ModelState中有哪些条目?

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4021442

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档