38 lines
966 B
C#
38 lines
966 B
C#
namespace active_allocator.Models.Users;
|
|
|
|
using System.ComponentModel.DataAnnotations;
|
|
using System.Diagnostics.CodeAnalysis;
|
|
using System.Runtime.InteropServices;
|
|
using active_allocator.Entities;
|
|
|
|
public class UserUpdateRequest
|
|
{
|
|
public string Username { get; set; }
|
|
public string FirstName { get; set; }
|
|
public string LastName { get; set; }
|
|
|
|
[EnumDataType(typeof(Role))]
|
|
public string Role { get; set; }
|
|
|
|
[EmailAddress]
|
|
public string Email { get; set; }
|
|
|
|
// treat empty string as null for password fields to
|
|
// make them optional in front end apps
|
|
private string _password;
|
|
|
|
[MinLength(6)]
|
|
public string Password
|
|
{
|
|
get => _password;
|
|
set => _password = replaceEmptyWithNull(value);
|
|
}
|
|
|
|
// helpers
|
|
|
|
private string replaceEmptyWithNull(string value)
|
|
{
|
|
// replace empty string with null to make field optional
|
|
return string.IsNullOrEmpty(value) ? null : value;
|
|
}
|
|
} |