如何将DataAnnotations持久保存到ViewModel

Cha*_*ell 2 asp.net-mvc data-annotations

在我的应用程序中,我的模型结构用DataAnnotations修饰.这有助于我的验证完美,但是我不确定如何在没有双重输入的情况下将这些DataAnnotations保留到我的ViewModel.

基本上我很懒,我试图尽可能保持干燥.

class User
{
    [Required]
    public string FirstName {get; set; }
    [Required]
    public string LastName {get; set; }
    public datetime RegistrationDate {get; }
}

class CreateUserViewModel
{
    public string FirstName {get; set; }
    public string LastName {get; set; }    
}
Run Code Online (Sandbox Code Playgroud)

第一个类永远不会被View使用,但它包含应用程序所需的所有DataAnnotations.第二个类总是由CreateUser View使用,但我不想重新应用DataAnnotations.这可能吗?如果是这样,怎么样?

Tod*_*ith 5

请参阅MetadataType属性,该属性允许您将DataAnnotations移动到单独的类.