/// <summary>
        /// Converts the given file names to domain objects.
        /// </summary>
        /// <param name="fileName">Name of the file.</param>
        /// <returns>
        /// The list of file name domain objects.
        /// </returns>
        public static UPHousingCashFileNameDomain ToDomain(UPHousingCashDumpFileName fileName)
        {
            if (fileName == null)
            {
                return(null);
            }

            return(new UPHousingCashFileNameDomain
            {
                Id = fileName.Id,
                FileName = fileName.FileName,
                IsSuccess = fileName.IsSuccess,
                Timestamp = fileName.Timestamp
            });
        }
        /// <summary>
        /// Creates a UP Cash dump file name entry for the given file name asynchronous.
        /// </summary>
        /// <param name="fileName">Name of the file.</param>
        /// <param name="isSuccess">if set to <c>true</c> [is success].</param>
        /// <returns>
        /// The created instance of <see cref="UPHousingCashDumpFileName" />
        /// </returns>
        public async Task <UPHousingCashDumpFileName> CreateAsync(string fileName, bool isSuccess = false)
        {
            var getResult = await GetAsync(fileName).ConfigureAwait(false);

            if (getResult == null)
            {
                // Create and add
                UPHousingCashDumpFileName newFileName = new UPHousingCashDumpFileName
                {
                    FileName  = fileName,
                    IsSuccess = isSuccess
                };
                await _context.UpHousingCashDumpFileNames.AddAsync(newFileName).ConfigureAwait(false);

                // If saved successfully, return entity
                return(await _context.SaveChangesAsync().ConfigureAwait(false) == 1
                    ? newFileName
                    : null);
            }

            return(null);
        }