如何验证ViewModel列表并在UI上显示错误消息

时间:2018-01-23 12:05:12

标签: validation asp.net-web-api asp.net-mvc-viewmodel

我正在开发一个web api项目,其中有一个域如下,

public class Customer {
   public string Email { get; set; }
}

ViewModel定义为,

public class CustomerViewModel
{
    [Required(ErrorMessage ="Email is required")]
    public string Email { get; set; }
}

从用户界面,用户可以将客户列表上传到数据库。这些客户在未执行任何验证的情况下得到保存。

public async Task<IHttpActionResult> SaveCustomers(List<Customer> customers)
        {
           //Save customers to database without validation
        }

然后另一个人可以激活这些客户。但在此之前,应该为每个客户执行检查,以查看是否提供了电子邮件ID。对于缺少电子邮件ID的所有记录,应在UI上显示相应行的验证消息。

public async Task<IHttpActionResult> ActivateCustomers(List<CustomerViewModel> customers)
        {
           //Validate and display error message to respective row
        }

有人可以提供一些帮助吗?

1 个答案:

答案 0 :(得分:0)

public async Task<IHttpActionResult> ActivateCustomers(List<CustomerViewModel> customers)
    {
       //Validate and display error message to respective row
       var result = customers.Where(a=>a.Email!= null).ToList();
       if(result.count > 0){
           return "Error message";
       }
    }

Try to modify the code accordingly.