Wednesday 21 September 2011

Download to Excel from dataset


da = New SqlDataAdapter(cmd)
            ds = New DataSet()
            da.Fill(ds)

           
            Dim response As HttpResponse = HttpContext.Current.Response
            Response.Clear()
            Response.Charset = " "
            Response.ContentType = "application/vnd.ms-excel"
            Response.AddHeader("Content-Disposition", "attachment;filename=RingaMail_invoice_details.xls;")
            Dim sw As New StringWriter
            Dim htw As New HtmlTextWriter(sw)
            Using sw
                Using htw
                    Dim dg As New GridView
                    dg.DataSource = ds.Tables(0)
                    dg.DataBind()
                    dg.RenderControl(htw)
                    Response.Write(sw.ToString())
                    Response.End()
                End Using

            End Using
            htw.Dispose()
            sw.Dispose()
            da.Dispose()
            ds.Dispose()
            htw = Nothing
            sw = Nothing