public void SaveFile(int userId, string fileName, string base64Content) { var filePath = _pathProvider.BuildAudioPath(fileName); var directory = Path.GetDirectoryName(filePath); if (!Directory.Exists(directory)) { Directory.CreateDirectory(directory); } File.WriteAllBytes(filePath, Convert.FromBase64String(base64Content)); }
public TimeSpan GetDuration(string relativePath) { var fullPath = _pathProvider.BuildAudioPath(relativePath); try { var audioFile = File.Create(fullPath, ReadStyle.Average); return(audioFile.Properties.Duration); } catch (Exception ex) { return(TimeSpan.Zero); } }
public void CleanUpMessages() { var date = DateTime.UtcNow.AddDays(-2); var messages = _unitOfWork.Repository <StickMan_Users_AudioData_UploadInformation>() .Get(x => x.UploadTime < date && !x.DeleteStatus); foreach (var message in messages) { var absolutePath = _pathProvider.BuildAudioPath(message.AudioFilePath); if (File.Exists(absolutePath)) { File.Delete(absolutePath); } message.DeleteStatus = true; _unitOfWork.Repository <StickMan_Users_AudioData_UploadInformation>().Update(message); } _unitOfWork.Save(); }