Esta é uma pré-visualização de arquivo. Entre para ver o arquivo original
using System.ComponentModel.DataAnnotations;
using PasseiDireto.API.Models.Shared;
using PasseiDireto.API.Validators;
namespace PasseiDireto.API.Models.Students
{
[EitherPropertyRequired("PersonalInfo", "AcademicInfo", "Password")]
public class UpdateStudentRequest
{
public StudentPersonalInfo PersonalInfo { get; set; }
public StudentAcademicInfo AcademicInfo { get; set; }
public StudentPassword Password { get; set; }
}
public class StudentPersonalInfo
{
[Required, MaxLength(50)]
public string Name { get; set; }
[MaxLength(100)]
public string LastName { get; set; }
[EnumValuesRequired(typeof(Gender))]
public Gender? Gender { get; set; }
}
[EitherPropertyRequired("CourseId", "CourseMapId", MutuallyExclusive = true)]
public class StudentAcademicInfo
{
[Required]
public int? UniversityId { get; set; }
public int? CourseId { get; set; }
public int? CourseMapId { get; set; }
}
public class StudentPassword
{
[Required]
public string Current { get; set; }
[Required, MinLength(6)]
public string New { get; set; }
}
}