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:
Dim dt As DataTable = GetDataTable(gl.StringaConnessioneTest, "select * from tabella") recupera in un datatable una tabella o vista di databasecodice: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 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

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
Rispondi quotando
