public void Test_FileStoring_TestRealData() { var documentManager = new PresentationDocumentManager(); var simpleFile = GetGenerationData(); var filePath = "E:\\Temp\\Amrop\\Generated\\PPT"; var fileName = $"{Guid.NewGuid().ToString()}.pptx"; documentManager.SaveDocument(simpleFile, filePath, fileName); }
public HttpResponseMessage DownloadPdfFile(string language, string id) { try { telemetry.TrackEvent("DownloadPdfFile", new Dictionary<string, string> { { "User", User.Identity.Name } }); var documentManager = new PresentationDocumentManager(); var generationData = GetGenerationData(language, id); var cleanedFullName = !string.IsNullOrEmpty(generationData.FullName) ? generationData.FullName.Replace(' ', '_') : string.Empty; var bytes = documentManager.GetDocument(GetGenerationData(language, id)); var result = Request.CreateResponse(HttpStatusCode.OK); result.Content = new ByteArrayContent(bytes); result.Content.Headers.ContentDisposition = new System.Net.Http.Headers.ContentDispositionHeaderValue( "attachment") { FileName = $"CV_{cleanedFullName}_{language.ToUpper()}" + ".pptx" }; using (var db = new ProfileInformationDbContext()) { db.AuditLogs.Add(new AuditLog { AuditEvent = AuditEvent.DownloadPpt.ToString(), EventTime = DateTime.Now, UserAffected = generationData.FullName, UserAffectedId = id, Username = User.Identity.Name }); db.SaveChanges(); } return result; } catch (Exception ex) { telemetry.TrackException(ex); return Request.CreateResponse(HttpStatusCode.InternalServerError); } }