Frågan#1
Jag har gjort en enkel test asp.net sida för databas-logik. Tänkte nu bara kolla om jag har gjort på rätt sätt, eller om jag missat eller gjort nåt fel!
På sidan har jag en "DataGrid1" som heter "dg"
Private sqlCmd As New SqlCommand("SELECT * FROM adotest", New SqlConnection("DB_CONN_STRING"))
Private sqlAdpt As New SqlDataAdapter(sqlCmd)
Private sqlDS As New DataSet()
Dim sqlDV As New DataView()
Private Sub fillDS()
sqlAdpt.Fill(sqlDS)
sqlDV.Table = sqlDS.Tables(0)
End Sub
Private Sub bindDG()
dg.DataSource = sqlDV
dg.DataBind()
End Sub
Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
'Put user code to initialize the page here
Call fillDS()
If Page.IsPostBack = False Then
Call bindDG()
End If
End Sub
Private Sub dg_SortCommand(ByVal source As Object, ByVal e As System.Web.UI.WebControls.DataGridSortCommandEventArgs) Handles dg.SortCommand
sqlDV.Sort = e.SortExpression
Call bindDG()
End Sub
Protected Overrides Sub Finalize()
MyBase.Finalize()
sqlDV.Dispose()
sqlCmd.Dispose()
sqlAdpt.Dispose()
sqlDS.Dispose()
sqlDV = Nothing
sqlCmd = Nothing
sqlAdpt = Nothing
sqlDS = Nothing
End Sub
Allting funkar ju perfekt, men rent kod och performance-mässigt finns det kanske nåt bättre sätt!
Jag vet att jag inte ska använda "Finalize"-händelsen, men det är väl det enda stället där jag kan göra egna "upp-rensningar", kan ju inte manuellt anropa en "Dispose"-metod från asp.net.
Tack på förhand!