using System.ComponentModel.DataAnnotations; using System.Web.Mvc; using AutoMapper; namespace MileageTraker.Web.ViewModels.Account { public class ChangePasswordViewModel { [HiddenInput(DisplayValue = false)] public string Username { get; set; } [HiddenInput(DisplayValue = false)] public string FullName { get; set; } [HiddenInput(DisplayValue = false)] public string Email { get; set; } [Required] [DataType(DataType.Password)] [Display(Name = "Current password")] public string OldPassword { get; set; } [Required] [StringLength(100, ErrorMessage = "The {0} must be at least {2} characters long.", MinimumLength = 6)] [DataType(DataType.Password)] [Display(Name = "New password")] public string NewPassword { get; set; } [DataType(DataType.Password)] [Display(Name = "Confirm new password")] [Compare("NewPassword", ErrorMessage = "The new password and confirmation password do not match.")] public string ConfirmPassword { get; set; } static ChangePasswordViewModel() { Mapper.CreateMap(); } public ChangePasswordViewModel(){} public ChangePasswordViewModel(Models.User user) { Mapper.Map(user, this); } public void SetProperties(Models.User user) { Mapper.Map(user, this); } } }