代码之家  ›  专栏  ›  技术社区  ›  chris

ASP.NET MVC:TryUpdateModel返回值或ModelState.IsValid?

  •  3
  • chris  · 技术社区  · 15 年前

    在我的活页夹中进行验证,我想知道是否需要检查返回值。在下面的选项1中,案例1和案例2是否会有区别?TryUpdateModel似乎不可能返回true,但ModelState.IsValid为false。

    选项1:

      if (TryUpdateModel(editItem, new string[] { "Field" }))
      {
        if (ModelState.IsValid)
        {
        } else {
        // Invalid model case 1
      }
      } else {
        // Invalid model case 2
      }
    

    选项2:

      TryUpdateModel(editItem, new string[] { "Field" }))
      if (ModelState.IsValid)
      {
      } else {
        // only one invalid model case 
      }
    
    1 回复  |  直到 15 年前
        1
  •  12
  •   Craig Stuntz    15 年前

    最后一行 TryUpdateModel 源代码是:

            return ModelState.IsValid;
    

    …这基本上回答了你的问题。:)

    推荐文章