PDA

View Full Version : سوال: نمایش N-1 رکورد در gridview (عدم نمایش تمامی رکوردها)



amin46
جمعه 16 تیر 1391, 19:10 عصر
سلام دوستان
من رو یه پروژه طراحی وب با زبان vb.net و دیتابیس access دارم کار میکنم برای تحویل به استاد.
مشکلم اینه که تمامی رکوردها در gridview نمایش داده نمیشه. یا به عبارتی یکی کم نشون داده میشه.
دستوری که استاد یادمون داده به این شکله:

Imports System.Data.OleDb
Partial Class _Default
Inherits System. Web (http://www.daneshju.ir/forum/vbglossar.php?do=showentry&item=Web) .UI.Page
Dim cnn As New OleDbConnection
Dim cmd As New OleDbCommand
Dim rst As OleDbDataReader
Protected Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button1.Click
cnn.ConnectionString = ("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=") + Server.MapPath("~/App_Data/web3.mdb")
cnn.Open()
cmd.Connection = cnn
cmd.CommandType = Data.CommandType.Text
cmd.CommandText = "select * from doroos order by(id)desc"
rst = cmd.ExecuteReader
rst.Read()
If rst.HasRows = True Then
GridView1.DataSource = rst
GridView1.DataBind()
Else
MsgBox("رکوردي يافت نشد")
End If
cnn.Close()
End Sub
End Class

ممنون میشم اگه کمکم کنید. در ضمن خیلی فوریه

ali_md110
جمعه 16 تیر 1391, 19:45 عصر
سلام
به جای کدهایی که نوشتی اینها رو جایگذین گن
آقا امین گل بعد از دستور Rst.ExecuteReader دیگه نیازی نیست بنویسی rst.red
یک دیتاتیبل مثل زیر بساز داده هایی که از دیتاریدر میخونی بریز داخلش و بعد خاصیت DataSurseاون گرایدویو رو به دیتاتیبل وصل کن چون
گراید ویو یک کنترلی هست که قابلیت ویرایش و اضافه کردن داره نموتونه مستقیم به شی دیتاریدر که فقط میتونه اطلاعات رو بخونه وصل بشه پش باید ابتدا بریزیش داخل دیتاتیبل


rst = cmd.ExecuteReader
Dim tbl As New DataTable
If rst.HasRows = True Then

tbl.Load(rst)
GridView1.DataSource = tbl
GridView1.DataBin()
Else
MsgBox("رکوردي يافت نشد")
End If
cnn.Close(