namespace MyOffice.Web.Models.Account { using System.ComponentModel.DataAnnotations; using Core.Extensions; using Data.Models.Accounts; public class MotionCategoryViewModel { public string? Id { get; set; } [Required] public string? Name { get; set; } public bool? AllowDelete { get; set; } } public static class AccountCategoryViewModelExtensions { public static MotionCategoryViewModel ToModel(this AccountCategory input) { return new MotionCategoryViewModel { Id = input.Id.ToShort(), Name = input.Name, AllowDelete = !input.Accounts?.Any(), }; } } }