using LCU.Library.Internal.ApiResponse.Models; using LCU.Library.Internal.FileOperationsModels.Models.NameSettings; using LCU.Library.Internal.FileOperationsModels.Shared; using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations.Schema; namespace LCU.Library.Internal.FileOperationsModels.Models { public class CreateDirectoryRequest : ReturnResponse { [Required(ErrorMessage = "Directory name is required.")] public string DirectoryName { get; set; } [Required(ErrorMessage = "Directory path is required")] public string DirectoryPath { get; set; } public DynamicNameSetting NameSetting { get; set; } [NotMapped] public string FinalDirectoryName { get { return DynamicNameBuilder.BuildDynamicName(DirectoryName, NameSetting); } } [NotMapped] public string DirectoryDestination { get { var finalDestinationPath = DirectoryPath.EndsWith("\\") ? DirectoryPath : $"{DirectoryPath}\\"; return $"{finalDestinationPath}{FinalDirectoryName}"; } } } }