ReportTemplateGetFile Method |
Namespace: Velo.Data
/// <summary> /// Gives a file stream as HTTP response message by report template ID /// </summary> /// <param name="pID">Report template ID</param> /// <returns>Report template as file stream</returns> [HttpGet] [ActionName("GetFile")] public HttpResponseMessage GetFile(int pID) { Velo.Data.Models.ReportTemplate lReportTemplate = Velo.Data.ReportTemplate.GetFile(pID: pID); var lStream = new FileStream(lReportTemplate.FileName, FileMode.Open); var lContent = new HttpResponseMessage(HttpStatusCode.OK) { Content = new StreamContent(lStream) }; lContent.Content.Headers.ContentType = new MediaTypeHeaderValue("application/octet-stream"); lContent.Content.Headers.ContentDisposition = new ContentDispositionHeaderValue("attachment") { FileName = lReportTemplate.Name }; return lContent; }
function ReportTemplateDownload(pReportTemplateID) {
// requirement: HTML element ID ReportTemplateDownload
// example: <p id="ReportTemplateDownload"></p>
var lReportTemplateDownload = document.getElementById('ReportTemplateDownload');
var lURL = getURLRoot() + 'api/ReportTemplateData/GetFile/' + pReportTemplateID;
lReportTemplateDownload.innerHTML = AlertInformation("<a href=\"" + lURL + "\">Datei öffnen </a>");
}