【问题标题】:ASP.NET MVC validate model dataanotations using mvvm in controlerASP.NET MVC 在控制器中使用 mvvm 验证模型数据注释
【发布时间】:2014-07-14 10:31:24
【问题描述】:

如果我在模型中有数据注释并在我的视图中使用 ViewModel,我如何在控制器中验证我的模型数据注释?

编辑: 感谢您的回答,我找到了解决方案

【问题讨论】:

  • 您能否提供一个代码示例来展示您迄今为止所做的尝试?
  • ModelState.IsValid 应该适合您,如果您已在 VM 中包含的模型中包含数据注释

标签: asp.net-mvc validation mvvm controller


【解决方案1】:
---viewmodel controler action---
if (ModelState.IsValid)
{
   var model = new Model();
   UpdateModel(model, viewModel);

   var result = new List<ValidationResult>();
   var context = new ValidationContext(model, serviceProvider: null, items: null);
   var isValid = Validator.TryValidateObject(model, context, result, true);
   if (!isValid)
   {
      foreach (var validationResult in result)
      {
         ModelState.AddModelError("",validationResult.ErrorMessage);
      }
   }

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-03-09
    • 1970-01-01
    • 2011-07-04
    • 1970-01-01
    • 2013-07-30
    相关资源
    最近更新 更多