private SystemMVC.ActionResult GetActionResult(string hash, bool streaming) { var path = paths[hash]; var extension = SystemIO.Path.GetExtension(path); extension = extension.Substring(1); var fileInfo = new SystemIO.FileInfo(path); var lenght = fileInfo.Length; string mimeType = null; if ("mp4".Equals(extension)) { mimeType = "video/mp4"; } if ("mpe".Equals(extension)) { mimeType = "video/mpeg"; } if ("mpeg".Equals(extension)) { mimeType = "video/mpeg"; } if ("mpg".Equals(extension)) { mimeType = "video/mpeg"; } if ("mov".Equals(extension)) { mimeType = "video/quicktime"; } if ("mxf".Equals(extension)) { mimeType = "application/mxf"; } if ("pdf".Equals(extension)) { mimeType = "application/pdf"; } if (mimeType == null) { Trace.TraceWarning("FileController: unknown file extension: " + extension + "\n sending as application/octet-stream"); mimeType = "application/octet-stream"; } var fileStream = SystemIO.File.OpenRead(path); SystemMVC.FileStreamResult result = null; if (streaming) { result = new VideoStreamResult(fileStream, mimeType, lenght); } else { var filename = SystemIO.Path.GetFileName(path); result = new SystemMVC.FileStreamResult(fileStream, mimeType); result.FileDownloadName = filename; } return(result); }
private SystemMVC.ActionResult GetActionResult(string hash, bool streaming) { var path = paths[hash]; var extension = SystemIO.Path.GetExtension(path); extension = extension.Substring(1); var fileInfo = new SystemIO.FileInfo(path); var lenght = fileInfo.Length; string mimeType = null; if ("mp4".Equals(extension)) { mimeType = "video/mp4"; } if ("mpe".Equals(extension)) { mimeType = "video/mpeg"; } if ("mpeg".Equals(extension)) { mimeType = "video/mpeg"; } if ("mpg".Equals(extension)) { mimeType = "video/mpeg"; } if ("mov".Equals(extension)) { mimeType = "video/quicktime"; } if ("mxf".Equals(extension)) { mimeType = "application/mxf"; } if ("pdf".Equals(extension)) { mimeType = "application/pdf"; } if (mimeType == null) { Trace.TraceWarning("FileController: unknown file extension: " + extension + "\n sending as application/octet-stream"); mimeType = "application/octet-stream"; } var fileStream = SystemIO.File.OpenRead(path); SystemMVC.FileStreamResult result = null; if (streaming) { result = new VideoStreamResult(fileStream, mimeType, lenght); } else { var filename = SystemIO.Path.GetFileName(path); result = new SystemMVC.FileStreamResult(fileStream, mimeType); result.FileDownloadName = filename; } return result; }