using System.Collections.Generic; using System.ComponentModel.DataAnnotations; using Abp.Auditing; using WeApp.Validation; using Abp.Extensions; using IwbZero.Authorization.Base.Users; namespace WeApp.Authorization.Accounts.Dto { public class RegisterInput : IValidatableObject { [Required] [StringLength(UserBase.MaxNameLength)] public string Name { get; set; } [Required] [StringLength(UserBase.MaxSurnameLength)] public string Surname { get; set; } [Required] [StringLength(UserBase.MaxUserNameLength)] public string UserName { get; set; } [Required] [EmailAddress] [StringLength(UserBase.MaxEmailAddressLength)] public string EmailAddress { get; set; } [Required] [StringLength(UserBase.MaxPlainPasswordLength)] [DisableAuditing] public string Password { get; set; } [DisableAuditing] public string CaptchaResponse { get; set; } public IEnumerable Validate(ValidationContext validationContext) { if (!UserName.IsNullOrEmpty()) { if (!UserName.Equals(EmailAddress) && ValidationHelper.IsEmail(UserName)) { yield return new ValidationResult("Username cannot be an email address unless it's same with your email address !"); } } } } }