السلام عليكم ..
الــ da.Fill لا يمسح البيانات القديمة ..بل يخزن نتيجة الاستعلام مع البيانات القديمة ...
و لفهم ما اقصد .. ضع على صفحة ما أربعة أزرار .. و ضع داخلها الكود التالي:
Imports System.Data.SqlClient
Imports System.Data
Partial Class Default5
Inherits System.Web.UI.Page
Protected Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim con As New SqlConnection("Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\Database.mdf;Integrated Security=True;User Instance=True")
con.Open()
Dim sql As String = "SELECT * FROM comnd WHERE id = 2"
Dim da As SqlDataAdapter = New SqlDataAdapter(sql, con)
Dim ds As DataSet = TryCast(Session("ds"), DataSet)
If (ds Is Nothing) Then
ds = New DataSet
End If
da.Fill(ds, "comnd")
Session("ds") = ds
End Sub
Protected Sub Button2_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button2.Click
Dim con As New SqlConnection("Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\Database.mdf;Integrated Security=True;User Instance=True")
con.Open()
Dim sql As String = "SELECT * FROM comnd WHERE id = 4"
Dim da As SqlDataAdapter = New SqlDataAdapter(sql, con)
Dim ds As DataSet = TryCast(Session("ds"), DataSet)
If (ds Is Nothing) Then
ds = New DataSet
End If
da.Fill(ds, "comnd")
Session("ds") = ds
End Sub
Protected Sub Button3_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button3.Click
Dim ds As DataSet = TryCast(Session("ds"), DataSet)
If ds Is Nothing Then
Return
End If
For Each dr As DataRow In ds.Tables("comnd").Rows
Response.Write(dr("id").ToString() & ",")
Next
End Sub
Protected Sub Button4_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button4.Click
Session("ds") = Nothing
End Sub
End Classو جرب الأزرار كالتالي ..
الأول ثم الثالث ثم الثاني ثم الثالث ..
ملاحظة : قد يحصل معك تكرار في البيانات .. لا أعرف حله في الوقت الحالي ..
تم تعديل هذه المشاركة بواسطة houssam11350_11350 في 13 نوفمبر 2011 في 20:24
لا إله إلا الله ... محمد رسول الله
لو كانت مشاركتي مفيدة و تريد تشجيعي على المزيد من العطاء , فضلا قم بتقييم المشاركة
المعرًف القديم : houssam11350_11350
من مواضيعي : ArabGenCode : مولد كود و إجراءات مخزنة و واجهات لجداول سيكوال سيرفر