检查多个对象列表中的重复值

时间:2017-01-13 22:59:26

标签: c# asp.net-mvc

所以在我的Web应用程序中,我使用的是BeginCollectionItems,它运行良好。我可以将我的列表保存到数据库中并与之对比。我的下一步是在这些列表中,我想检查并确保该集合包含唯一ID。如果这些名字与人们拥有相同名字和姓氏的名字相同,我会更加关心。

我有一个单独的用户对象:

public class User
{
    [Required(ErrorMessage = "Name is required.")]
    [Display(Name = "Name")]
    public string Name { get; set; }

    [Required]
    [Display(Name = "ID")]
    [RegularExpression(@"^\d{10}$", ErrorMessage = "Invalid ID.")]
    public string ID { get; set; }
}

我有一个IEnumerable对象

public IEnumerable<User> UserList { get; set; }

我正在研究创建自定义验证属性。

类似于

的东西
[Unique("ID", ErrorMessage= "You cannot use an ID that already exists in the list.")]
public IEnumerable<User> UserList { get; set; }

基本上,它会检查列表并特别查看ID字段,并确保它是唯一的ID。我只是不知道如何处理它。

我想将此与其他集合一起使用,并且可能会检查列表中的多个字段(如地址列表),并确保没有两个地址具有相同的街道,城市和州。尽管如此,这种情况还有一段距离。

0 个答案:

没有答案