using LCU.Library.Internal.ApiResponse.Models; using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations.Schema; namespace LCU.Library.Internal.FileOperationsModels.Models { public class WriteFileRequest : ReturnResponse { [Required(ErrorMessage = "Destination path is required.")] public string DestinationPath { get; set; } [Required(ErrorMessage = "FileName is required.")] public string FileName { get; set; } [Required(ErrorMessage = "Extension is required.")] public string Extension { get; set; } [Required(ErrorMessage = "FileData is required.")] public string FileData { get; set; } public bool Overwrite { get; set; } = false; [NotMapped] public string FullFilePath { get { return DestinationPath.EndsWith("\\") ? $"{DestinationPath}{FileNameWithExtension}" : $"{DestinationPath}\\{FileNameWithExtension}"; } } [NotMapped] public string FileNameWithExtension { get { return Extension.StartsWith(".") ? $"{FileName}{Extension}" : $"{FileName}.{Extension}"; } } } }