using Abp.Auditing; using Abp.Extensions; using System.Collections.Generic; using System.ComponentModel.DataAnnotations; using VberAdmin.Validation; using VberZero.BaseSystem.Users; namespace VberAdmin.Authorization.Accounts.Dto; public class RegisterInput : IValidatableObject { [Required] [StringLength(User.MaxNameLength)] public string Name { get; set; } [Required] [StringLength(User.MaxSurnameLength)] public string Surname { get; set; } [Required] [StringLength(User.MaxUserNameLength)] public string UserName { get; set; } [Required] [EmailAddress] [StringLength(User.MaxEmailAddressLength)] public string EmailAddress { get; set; } [Required] [StringLength(User.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 the same as your email address!"); } } } }