2013-03-16 53 views
0

我創造了這個COM對象:如何下載在MVC中使用COM創建的Excel對象?

using Microsoft.Office.Interop.Excel; 

private Application app = null; 
private Workbook workbook = null; 
private Worksheet worksheet = null; 


     worksheet.Cells[1, 1] = "title "; 

     worksheet.Cells[2, 1] = "row 1 header"; 
     worksheet.Cells[2, 2] = "row 1 header"; 
     worksheet.Cells[2, 3] = "row 1 header"; 
     worksheet.Cells[2, 4] = "row 1 header"; 

     var i = 2; 
     foreach (var vm in model) 
     { 

      worksheet.Cells[i, 1] = "value"; 
      worksheet.Cells[i, 2] = "value"; 
      worksheet.Cells[i, 3] = "value"; 
      worksheet.Cells[i, 4] = "value"; 

      i++; 
     } 

現在,我有這個Excel.Application對象, 我怎麼做才能將它發送給瀏覽器,使用戶可以下載嗎?

回答

0

將工作表插入工作簿後,可以將工作簿和response.redirect保存到命運路徑。

...

workbook.SaveAs(@"~/YourPathName/ExcelFileName.xls", 
         Microsoft.Office.Interop.Excel.XlFileFormat.xlAddIn8, 
         Type.Missing, 
         Type.Missing, 
         Type.Missing, 
         Type.Missing, 
         Microsoft.Office.Interop.Excel.XlSaveAsAccessMode.xlNoChange, 
         Type.Missing, 
         Type.Missing, 
         Type.Missing, 
         Type.Missing, 
         Type.Missing); 

...

System.Web.HttpApplication htt = System.Web.HttpContext.Current.ApplicationInstance; 

htt.Response.Redirect(@"~/YourPathName/ExcelFileName.xls");