아래 나열된 링크를 모두 따라갔습니다. 작성하는 가장 좋은 방법은이 SMALL 작성 및 다운로드 기능을 찾았습니다.파일 다운로드 방법
- Download file of any type in Asp.Net MVC using FileResult? + How to convert an Stream into a byte[] in C#?
- Using a FileStreamResult with a MemoryStream in ASP.NET MVC 3
- Writing A Custom File Download Action Result For ASP.NET MVC
그것은 완벽하게 오류없이 코드를 통해 내가이 실행되지만 "쫓아"하지 않습니다 때마다 실행을 (Excel 용 EPPlus 사용) 다운로드 할 파일 (대화 상자 또는 w/e로 저장). I 누락/잘못하고 있어요 무엇
public ActionResult ShowReport()
{
using (var stream = new MemoryStream())
{
ExcelPackage pck = new ExcelPackage();
var ws = pck.Workbook.Worksheets.Add("Sample1");
ws.Cells["A1"].Value = "Sample 1";
ws.Cells["A1"].Style.Font.Bold = true;
var shape = ws.Drawings.AddShape("Shape1", eShapeStyle.Rect);
shape.SetPosition(50, 200);
shape.SetSize(200, 100);
shape.Text = "Sample 1 text text text";
var fileDownloadName = "sample.xlsx";
var contentType = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet";//System.Net.Mime.MediaTypeNames.Application.Octet
var fileStream = new MemoryStream();
pck.SaveAs(fileStream);
fileStream.Position = 0;
var fsr = new FileStreamResult(fileStream, contentType);
fsr.FileDownloadName = fileDownloadName;
byte[] fileBytes = ReadToEnd(fileStream);
string fileName = "example";
return File(fileBytes, contentType, fileName);
}
}
? - 그 대화를 직접 써야하나요?
PN : 나는 또한
byte[] fileBytes = ReadToEnd(fileStream);
string fileName = "example";
return File(fileBytes, contentType, fileName);
는 당연히 내가 바이트 스트림으로 변환하는 방법을 알아낼했다이 방법을 시도하지만 그것도 아무 것도 보이지 않았다. 의
이미지 크롬의 (당신이 CTL + 마우스 휠의 스크롤 볼 수없는 경우) 작은 이미지에 대한 죄송 네트워크 개발 툴 당신의 지원 browswer의 경우.
코드의 마지막 줄 ("아무것도 표시하지 않음")이 올바른 방법입니다. 어떻게 보이지 않았는지 자세히 설명해주십시오. 서버의 응답이 전혀 없었습니까? 이것을 디버깅 할 때 어디에서 실패할까요? – David
글쎄, HTTP 헤더 및 기타 확장 기능과 몇 가지 다른 확장 기능을 사용하여 Chrome에서 내 browswer를 열고 개발자 도구를 열면 "Gone Wrong"의 흔적이 표시되지 않습니다.그 밖의 다른 방법은 무엇입니까? 예, VS 내부 코드를 밟지 않았습니까? –
브라우저의 디버깅 도구에서 서버의 응답은 무엇입니까? 실제 파일이 나오고 비어 있거나 손상 되었습니까? 파일 서버 쪽을 저장하면 유효한 파일입니까? – David