コード例 #1
0
        public IActionResult GetTestRunReport(int id, [FromBody] ReportRequest request)
        {
            var reportPath   = PTMKernelService.GetTestRunReport(id, request.Format, request.TestCases);
            var reportStream = new FileStream(reportPath, FileMode.Open, FileAccess.Read, FileShare.Read);

            return(new FileStreamResult(reportStream, GetMIMEType(request.Format))
            {
                FileDownloadName = Path.GetFileName(reportPath)
            });

            string GetMIMEType(ReportFormat format) => format switch
            {
                ReportFormat.Plain => "text/plain",
                ReportFormat.Json => "text/plain",
                ReportFormat.XUnit => "application/xml",
                _ => throw new InvalidOperationException($"\"{format}\" is not a valid report format.")
            };
        }