الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

عرض بيانات في GridView عن طريق code وليس wizard

بدأه wisdom2010 في 18 ديسمبر 2010 · 9 رد · 1,459 مشاهدة · في ASP.NET
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم ورحمة الله وبركاته

واجهت مشكلة في عرض البيانات في gridView عن طريق كتابة code البحث وليس عن طريق wizard

لا أدري هل هذا الكود خطأ ، أم أن هناك مشكلة أخرى ،،

وهل بالإمكان عرض بيانات مع وجود شروط(and/or) باستخدام ال wizard ???

هذا هو الكود

  Protected Sub DropDownList1_SelectedIndexChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles DropDownList1.SelectedIndexChanged
        Dim selectsql As String
        selectsql = "select * from cars where type=@type and state=@state"
        Dim con As New SqlConnection(connectionstring)
        Dim cmd As New SqlCommand(selectsql, con)
        Dim reader As SqlDataReader
        cmd.Parameters.AddWithValue("@type", DropDownList1.Text)
        cmd.Parameters.AddWithValue("@state", "available")
        Try
            con.Open()
            reader = cmd.ExecuteReader()
            reader.Read()
            Me.GridView1.DataSource = reader
            Me.GridView1.DataBind()

            reader.Close()
        Catch er As Exception
            MsgBox(er.Message)
        Finally
            con.Close()

        End Try  
end sub

عند التنفيذ يعطيني في الصفحة الرسالة التالية :

The DataSourceID of 'GridView1' must be the ID of a control of type IDataSource. A control with ID 'SqlDataSource2' could not be found.

تم تعديل هذه المشاركة بواسطة wisdom2010 في 18 ديسمبر 2010 في 14:30

#2

حسب خبرتي البسيطه لابد تحدد Data key Names و Data sourceID للقردفيو

واذا حاب نحل المشكله سوى حط مثال

#3

ابحث في المنتدي قبل السؤال يوجد امثله كثيره

#4
wisdom2010 كتب:

عند التنفيذ يعطيني في الصفحة الرسالة التالية :

The DataSourceID of 'GridView1' must be the ID of a control of type IDataSource. A control with ID 'SqlDataSource2' could not be found.

السلام عليكم

الخطأ الأول (الذى ظهر ):

يبدو أنك قمت بضيط الخاصية DataSourceId إلى أداة SqlDataSource ولكن ربما قد قمت بحذفها أو تغير إسمها .

الخطأ الثانى الذى( لم يظهر) :

لا يصح ان تقوم بضبط كلا الخاصيتن DataSource و DataSourceID لنفس الأداة والتى هى هنا GridView , فيجب أحدهما فقط .

الحل المتبع فى مثال هذا الخطأ : تذهب إلى كود التصميم للأداة GridView وتحذف الخاصية DataSourceID .

والسلام عليكم

2

Ahmed Moosa

Microsoft Community Contributor | MCC

Microsoft Certified Professional Developer | MCPD

Microsoft Certified Technology Specialist | MCTS

Senior .NET Developer

.Net Trainer

English blog : http://weblogs.asp.net/ahmedmoosa/

مدونة عربى : http://ahmedmoosa.wordpress.com/

#5

السلام عليكم

بارك الله فيكم وجزاكم خيرا على المساعدة

أخي أحمد لقد حذفت ال DataSourceID بالفعل

لكن تظهر لي رسالة بالخطأ التالي :

the data source does not support server side data paging

#6
wisdom2010 كتب:

لكن تظهر لي رسالة بالخطأ التالي :

the data source does not support server side data paging

السلام عليكم

حيث أنك تستخدم DataReader والتى لا يمكن أن تستخدم معها Paging , فتجد هذا الخطأ ( DataReader لا تدعم Paging ), والحل المتبع هنا هو إستخدام DataSet بدلاً من DataReader والسبب ان DataSet تعمل بإستخدام الـ Cache مما يساعدها على دعم Paging .

والسلام عليكم

Ahmed Moosa

Microsoft Community Contributor | MCC

Microsoft Certified Professional Developer | MCPD

Microsoft Certified Technology Specialist | MCTS

Senior .NET Developer

.Net Trainer

English blog : http://weblogs.asp.net/ahmedmoosa/

مدونة عربى : http://ahmedmoosa.wordpress.com/

#7
Ahmed Moosa كتب:

السلام عليكم

حيث أنك تستخدم DataReader والتى لا يمكن أن تستخدم معها Paging , فتجد هذا الخطأ ( DataReader لا تدعم Paging ), والحل المتبع هنا هو إستخدام DataSet بدلاً من DataReader والسبب ان DataSet تعمل بإستخدام الـ Cache مما يساعدها على دعم Paging .

والسلام عليكم

بارك الله فيك ... لكني لا أعرف كيف أستخدم ال data set وليس لدي وقت لأتعلمها الآن ، لأن هذا المشروع مطلوب مني خلال بضعة أيام

هل هناك طريقة أسهل ، أو هل من الممكن عن طريق ال wizard ؟؟؟

أنا كنت في البداية مستخدم ال wizard لكن أردت فيما بعد أن أضيف شرط ،، أي أن يظهر البيانات في grid view بناء على تحقق شرطين معا ، لكني لم أتمكن من وضع الشرطين باستخدام and عن طريق ال wizard

فهل هذا ممكن أم لا ؟؟

بارك الله فيكم وجزاكم خيرا وزادكم علما

#8

كل شئ ممكن مع ال wizard مع انى لا افضله

عموما ستستخدم SQLDataSource

و تختار Configure كما فى الصورة

60651903.jpg

ثم بعد ذلك New Connection

32881218.jpg

ثم ستختار ال Server name ثم الdatabase

بعد ذلك سيظهر لك form بها connection string variable

93211109.jpg

ثم بعد ذلك سيظهر لك form لتختار طريقة ال select التى تناسبك

الاختيار الاول لكى تكتب انت ال Sql Statment

و الاختيار الثانى لكى تختار الcolumns عن طريق الwizard

ستختار الاختيار الاول(طبعا انت ليك مطلق الحرية الاختيار الطريقة التى تناسبك)

30027730.jpg

ستظهر لك form لتختار اذا كنت تريد ان تدخل ال query او اسم الstored procedure

للselect,insert,updatedelete

هتكتب الquery الخاص بك و تدوس next

81348436.jpg

هنا ستختار القيم parameters الى فلى الquery بتاعك

22643608.jpg

1
#9
CsharpProgrammer كتب:

كل شئ ممكن مع ال wizard مع انى لا افضله

عموما ستستخدم SQLDataSource

و تختار Configure كما فى الصورة

60651903.jpg

ثم بعد ذلك New Connection

32881218.jpg

ثم ستختار ال Server name ثم الdatabase

بعد ذلك سيظهر لك form بها connection string variable

93211109.jpg

ثم بعد ذلك سيظهر لك form لتختار طريقة ال select التى تناسبك

الاختيار الاول لكى تكتب انت ال Sql Statment

و الاختيار الثانى لكى تختار الcolumns عن طريق الwizard

ستختار الاختيار الاول(طبعا انت ليك مطلق الحرية الاختيار الطريقة التى تناسبك)

30027730.jpg

ستظهر لك form لتختار اذا كنت تريد ان تدخل ال query او اسم الstored procedure

للselect,insert,updatedelete

هتكتب الquery الخاص بك و تدوس next

81348436.jpg

هنا ستختار القيم parameters الى فلى الquery بتاعك

22643608.jpg

بارك الله فيك

وجزاك خيرا على الإفادة

جربت الطريقة والحمدلله نجحت

تم تعديل هذه المشاركة بواسطة wisdom2010 في 22 ديسمبر 2010 في 22:34

#10

اضغط على السهم الى فى الDropDownList بتاعة الservername

هيعمل load و هيجبلك الservername

مواضيع مشابهة

عدد الزوار حالياً

المتواجدون خلال آخر دقيقتين · يتحدّث كل ٣٠ ثانية

—الإجمالي—أعضاء مسجّلون—زوار بدون تسجيل

جارٍ التحقق من المتواجدين…