2013-07-05 4 views
1

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'를 열려는 파일, 다른 형식에 비해입니다 파일 확장명으로 지정됩니다. 파일을 열기 전에 파일이 손상되지 않았고 신뢰할 수있는 출처인지 확인하십시오. 지금 파일을 열시겠습니까? 예/아니오

내가 뭘 잘못하고 있는지에 대한 아이디어가 있습니까?

건배!

+0

경고 메시지를 보낸 후 Excel에서 파일을 열 수 있습니까? MS Office 버전은 IE8과 IE10에서 동일합니까? –

+0

Saqib - 예 프롬프트를 클릭하면 파일이 Excel에서 열립니다. MS Office 버전은 IE8과 IE10을 모두 사용하는 버전입니다. – Mendelev

+0

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 –

답변

1

위의 설명에서 언급 한 Saqib Razzaq. 언급 한 것처럼 호환성 모드를 해제하십시오. here