MVC 프로젝트에서 보고서를 생성하고 있습니다. 사용자는 .pdf 형식 또는 .xls 형식으로 보고서를 가져올 수 있습니다.IE 8의 XlsSaveOptions (SaveFormat.Excel97To2003) 문제
Excel 파일 생성에 Aspose.Cells를 사용하고 있습니다. 아래 ActionResult 메서드가 호출됩니다. GetExcelVersion() 또는 GetPdfVersion()가 호출되면
[HttpGet]
public ActionResult GenerateReport(string format, string filterDate = "")
{
//Processing occurs here to get the appropriate info from Db.
var fileFormat = format.ToUpper() == "PDF" ? Format.Pdf : Format.Csv;
var contentType = fileFormat == Format.Pdf ? "application/pdf" : "application/vnd.ms-excel";
var makePdf = fileFormat == Format.Pdf;
var fileContents = register.GetReport(makePdf, filterDate);
return File(fileContents, contentType, "Report");
}
register.GetReport()는 단순히 결정한다.
private void GetExcelVersion(MemoryStream stream, string name, string dateRequested = "")
{
var license = new Aspose.Cells.License();
license.SetLicense("Aspose.Total.lic");
var workbook = new Workbook();
var worksheet = workbook.Worksheets[0];
var cells = worksheet.Cells;
//writes out the appropriate information to the excel spreadsheet here
workbook.Save(stream, new XlsSaveOptions(Aspose.Cells.SaveFormat.Excel97To2003));
}
이 파이어 폭스와 IE10에 매력을 작동하지만 IE8에서 테스트 때 엑셀에서 다음과 같은 경고가 나타납니다 -
당신이 'XXXXX'를 열려는 파일, 다른 형식에 비해입니다 파일 확장명으로 지정됩니다. 파일을 열기 전에 파일이 손상되지 않았고 신뢰할 수있는 출처인지 확인하십시오. 지금 파일을 열시겠습니까? 예/아니오
내가 뭘 잘못하고 있는지에 대한 아이디어가 있습니까?
건배!
경고 메시지를 보낸 후 Excel에서 파일을 열 수 있습니까? MS Office 버전은 IE8과 IE10에서 동일합니까? –
Saqib - 예 프롬프트를 클릭하면 파일이 Excel에서 열립니다. MS Office 버전은 IE8과 IE10을 모두 사용하는 버전입니다. – Mendelev
IE8에서 문제가있는 것 같습니다. 많은 문제가 Google 검색 결과에 나타납니다. http://answers.microsoft.com/en-us/ie/forum/ie8-windows_7/on-clicking-csv-file-link-file-opening-in에서 제안 된대로 호환 모드를 사용 중지 해주세요. -internet/fcf60b32-4fc7-43ac-afb8-49ba90fb322e? page = 2 –