Per quale motivo questo codice mi funziona su un sito e mi si pianta su un altro?
codice:
Protected Sub ExportToExcel(sender As Object, e As EventArgs)
Dim nomefile = "ArticoliDisponibilita"
Response.Clear()
Response.Buffer = True
Response.AddHeader("content-disposition", "attachment;filename=" & nomefile & ".xls")
Response.Charset = ""
Response.ContentType = "application/vnd.ms-excel"
Using sw As New StringWriter()
Dim hw As New HtmlTextWriter(sw)
hw.WriteLine("<b>Disponibilità:</b>")
Dim scritto = False
Dim GV As GridView = gvarticoli
If GV.Rows.Count > 1 Then
rendergv(GV)
GV.RenderControl(hw)
scritto = True
End If
.......
Si pianta sulla riga GV.RenderControl(hw) dicendo che il controllo Gridview deve essere inserito in un tag form con runat="server"... in rete vedo post datati 2006 con questo errore e parlano di un bug del gridview control, non credo siano applicabili....
Il gridview ha solo BoundFields, non ha templatefields con controlli all'interno, è una griglia banale.
L'unica differenza con la pagina in cui funziona è che in questa pagina il gridview è all'interno di una view di un controllo multiview (insieme al linkbutton da cui lancio la ExportToExcel)....
What the hell?