Originariamente inviata da
pietro09
questo è un tipico esempio di come ci si può complicare la vita trasformando una cosa facile in difficile e (a mio avviso) forse anche inutile
Comunque, con quel codice, quel che si manda è una stringa del tipo "<table>***</table>" come documento allegato, con estensione xls
detto questo, togliendo le righe inutili del tuo codice, ho questo:
codice:
Dim dt As DataTable = GetDataTable(gl.StringaConnessioneTest, "select * from tabella")
Dim html As String = getTableFromDataTable(dt)
Response.Clear()
Response.Charset = ""
Response.ContentType = "application/vnd.xls"
Response.AddHeader("Content-Disposition", "attachment;filename=" & "prova".Replace(" ", "_") & "_" & String.Format("{0:yyyyddMMhhmmss}", DateTime.Now) & ".xls")
Response.ContentEncoding = System.Text.Encoding.UTF8
Response.Write(html)
Response.End()
Dim dt As DataTable = GetDataTable(gl.StringaConnessioneTest, "select * from tabella") recupera in un datatable una tabella o vista di database
Dim html As String = getTableFromDataTable(dt) fa la scansione riga per riga, campo per campo del datatable e scrive in una stringa (meglio un stringbuilder)
il resto del codice è quello proposto da te
Alla fine funziona, ma non è un foglio excel vero