If you pass Save an HttpResponse object, ExcelWriter will stream the generated file to the client. This method allows you to specify a default client-side file name, and whether the file should be opened in the browser window or in Microsoft Excel.

 public virtual void Save(System.Web.HttpResponse response, System.String attachmentName, boolean openInBrowser)
Public Overridable Sub Save(ByVal response As System.Web.HttpResponse, ByVal attachmentName As String, ByVal openInBrowser As Boolean)

A object, usually Page.Response

Specifies a name for the generated Excel file; this name will be displayed in the download dialog when the file is streamed to the browser.

If openInBrowser is set to true, and the user chooses to open the file, the file will open in the browser window. If openInBrowser is set to false, and the user chooses to open the file, the file will open in Microsoft Excel. By default, the file will open in the browser window.

not all browsers can embed an Excel file in the browser window

ExcelWriter allows you to save in both the Excel 97-03 BIFF8 format (.xls) or the new Office Open XML (.xlsx) format. The template file must be of the expected output format. Hence, if you wish to output .xls files, you must start with a .xls template, and if you wish to output .xlsx files, you must start with a .xlsx template. ExcelWriter does not support the creation or editing of .xlsx files with the ExcelApplication object.

You can call Save more than once for a single instance of ExcelTemplate. This allows you to save more than one copy of a generated file, and/or both save the file on the server and stream it to the client.

Stream to the client and open in Excel

When you pass an HttpResponse object to Save, ExcelWriter will stream the generated Excel file to the client. The browser will display a File Download dialog asking the user to open or save the file. The method's second parameter specifies a file name to display in the File Download dialog. If the method's third parameter - openInBrowser - is false and the user chooses to open the Excel file, the file will open in Microsoft Excel.


            //--- Stream to the client
            //--- "Output.xls" will appear in the Save As dialog
            //--- The file will open in Excel
            xlTemplate.Save(Page.Response, "Output.xls", false);

            //--- Stream to the client
            //--- "Output.xlsx" will appear in the Save As dialog
            //--- The file will open in Excel 2007 only
            xlTemplate.Save(Page.Response, "Output.xlsx", false);
          

            '--- Stream to the client
            '--- "Output.xls" will appear in the Save As dialog
            '--- The file will open in Excel
            xlTemplate.Save(Page.Response, "Output.xls", False)

            '--- Stream to the client
            '--- "Output.xlsx" will appear in the Save As dialog
            '--- The file will open in Excel 2007 only
            xlTemplate.Save(Page.Response, "Output.xlsx", False)
Stream to the client and open in the browser window

When you pass an HttpResponse object to Save, ExcelWriter will stream the generated Excel file to the client. The browser will display a File Download dialog asking the user to open or save the file. The method's second parameter specifies a file name to display in the File Download dialog. If the method's third parameter - openInBrowser - is True and the user chooses to open the Excel file, the file will open in the browser window.

            //--- Stream to the client
            //--- "Output.xls" will appear in the Save As dialog
            //--- The file will open in the browser's Excel plug-in
            xlTemplate.Save(Page.Response, "Output.xls", true);
            ...

            //--- Stream to the client
            //--- "Output.xlsx" will appear in the Save As dialog
            //--- The file will open in the browser's Excel 2007 plug-in
            xlTemplate.Save(Page.Response, "Output.xlsx", true);
            '--- Stream to the client
            '--- "Output.xls" will appear in the Save As dialog
            '--- The file will open in the browser's Excel plug-in
            xlTemplate.Save(Page.Response, "Output.xls", True)
            ...

            '--- Stream to the client
            '--- "Output.xlsx" will appear in the Save As dialog
            '--- The file will open in the browser's Excel 2007 plug-in
            xlTemplate.Save(Page.Response, "Output.xlsx", True)