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

عندي مشكلة في الداتا بايند

بدأه Muath2000 في 18 ديسمبر 2011 · 12 رد · 510 مشاهدة · في ASP.NET
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

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

لي يومين آحاول حل هذي المشكلة

Error Message: DataBinding: 'System.Data.Common.DataRecordInternal' does not contain a property with the name 'pID'.

وآتمنى مساعدتكم مشكورين في الكود

index.aspx

     <tr>
                                                                <td style="WIDTH: 146px; HEIGHT: 19px"> <asp:label id="lblAreaNew" runat="server" CssClass="BoldBlueLabel">Area:</asp:label>
                                     <asp:label id="Label157" runat="server" CssClass="BoldRedLabel" Visible="False">*</asp:label></td>
                                                                <td style="HEIGHT: 19px"><asp:dropdownlist id="lstAreaNew" runat="server" CssClass="BoldBlueLabel" DataValueField="aID" DataTextField="aDescription" AutoPostBack="True"></asp:dropdownlist></td>
                                                        </tr>
                                                        <tr id="trAreaLocation" runat="server">
                                                                <td style="WIDTH: 146px; HEIGHT: 19px"> <asp:label id="lblPoleNoNewByPost" runat="server" CssClass="BoldBlueLabel">Post No:</asp:label>
                                     <asp:label id="Label30" runat="server" CssClass="BoldRedLabel" Visible="False">*</asp:label></td>
                                                                <td style="HEIGHT: 19px">
                                            <asp:dropdownlist id="lstPoleNoNewByPost" runat="server" CssClass="BoldBlueLabel" DataValueField="pLocation" DataTextField="pID"
                                                                                AutoPostBack="True"></asp:dropdownlist>
                                                                                <%--<asp:label id="lblLocationNewByPost" runat="server" CssClass="BoldBlueLabel">Location\Street:</asp:label><asp:label id="Label31" runat="server" CssClass="BoldBlueLabel"><%=Location%></asp:label>--%>
                                                                                 <asp:label id="lblLocationNewByPost" runat="server" CssClass="BoldBlueLabel">Location\Street:</asp:label>
                                    <asp:dropdownlist id="lstLocationNewByPost" runat="server" 
                                        CssClass="BoldBlueLabel" DataValueField="lID"
                                                                                DataTextField="lDescription" AutoPostBack="True" Enabled="False"></asp:dropdownlist>
                                        </td>
                                                        </tr>

index.aspx.vb

    Sub BindPost()
        lstPoleNoNewByPost.DataSource = objOrgs.sp_slbrs_GetPostByAreas(lstAreaNew.SelectedValue)
        lstPoleNoNewByPost.DataBind()
        Response.Write(lstAreaNew.SelectedValue)
        BindLocationByPost()
    End Sub

OrgDB.vb

    Public Function sp_slbrs_GetPostByAreas(ByVal intAreaID As Integer) As SqlDataReader
        ' Create Instance of Connection and Command Object
        Dim myConnection As New SqlConnection(GetDBConnectionString())

        ' Generate Command Object based on Method
        Dim myCommand As SqlCommand = SqlCommandGenerator.GenerateCommand(myConnection, _
            CType(MethodBase.GetCurrentMethod(), MethodInfo), _
            New Object() {intAreaID})

        ' Execute the command
        myConnection.Open()
        Dim result As SqlDataReader = myCommand.ExecuteReader(CommandBehavior.CloseConnection)

        ' Return the datareader 
        Return result
    End Function

Stored Procedure

USE [DbpPWR03]
GO
/****** Object:  StoredProcedure [dbo].[sp_slbrs_GetPostByAreas]    Script Date: 12/18/2011 15:15:30 ******/
SET ANSI_NULLS OFF
GO
SET QUOTED_IDENTIFIER OFF
GO

ALTER PROCEDURE [dbo].[sp_slbrs_GetPostByAreas] 
        -- Add the parameters for the stored procedure here
        @intAreaID int
AS
BEGIN
        -- SET NOCOUNT ON added to prevent extra result sets from
        -- interfering with SELECT statements.
        SET NOCOUNT ON;

    -- Insert statements for procedure here
        SELECT @intAreaID

SELECT     slbrs_tlkpPoles.pID
FROM         slbrs_tlkpArea CROSS JOIN
                      slbrs_tlkpLocations CROSS JOIN
                      slbrs_tlkpPoles
WHERE     (slbrs_tlkpArea.aID = @intAreaID) AND (slbrs_tlkpLocations.lArea = slbrs_tlkpArea.aID) 
AND (slbrs_tlkpPoles.pLocation = slbrs_tlkpLocations.lID)

END
#2

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

اخي تأكد من صحة الحقل pID

.:: Wish to become better and better ::.

#3

لا مشكلة في الحقل وهذه مشكلتي بآني تآكدت كثيراً ولم آجد المشكلة.

#4

يعني انت عملت التالي :

ـ كتبت الإجراء المخزن ونفذته داخل قاعده بيانات الـ sql server وتأكدت انه يرجع بجدول يحتوي على الحقل 'pID'

ـ عملت تتبع برمجي debugg للداله sp_slbrs_GetPostByAreas وتأكدت انه يرجع جدول يحتوي على نفس الحقل

ـ اخيرا تتبعت التنفيذ داخل صفحه ال index.aspx.vb وطلع الخطأ عند عمل bind لل dropdownlist يعني عند السطر التالي

lstPoleNoNewByPost.DataBind()

؟؟؟؟؟

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

#5
tagh552 كتب:

يعني انت عملت التالي :

ـ كتبت الإجراء المخزن ونفذته داخل قاعده بيانات الـ sql server وتأكدت انه يرجع بجدول يحتوي على الحقل 'pID'

ـ عملت تتبع برمجي debugg للداله sp_slbrs_GetPostByAreas وتأكدت انه يرجع جدول يحتوي على نفس الحقل

ـ اخيرا تتبعت التنفيذ داخل صفحه ال index.aspx.vb وطلع الخطأ عند عمل bind لل dropdownlist يعني عند السطر التالي

lstPoleNoNewByPost.DataBind()

؟؟؟؟؟

كلامك مضبوط ١٠٠٪، وللآسف يظهر هذا الخطآ مع آن الsql server النتيجة صحيحة، لكن في الصفحة يظهر الخطآ المذكور.

#6

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

اخي ممكن ترفق المشروع ليتم حل المشكلة؟

.:: Wish to become better and better ::.

#7

آخي في صعوبة في إرفاق المشروع لضخامته، الكود في الآعلى للجزئية المهمة، وآنا جاهز لآي مقترحات.

#8

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

اخي فقط ارفق قاعدة البيانات والصفحة المراد تعديلها

.:: Wish to become better and better ::.

#9

بإذن الله سآحاول غداً رفع الملفات.

#10

آخي VB Helper، تم ارسال المشروع إلى بريدك بالياهو والهوت ميل الخاص بك.

بانتظار دعمك ومساعدتك

#11

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

اخي ارجو في المرات القادمة رفع قاعدة البيانات والصقحه هنا لتحظى بمشاركة الجميع, طبعا مشروع كبير جدا, وقاعدة البيانات ماشاء الله, لكن بحمدالله تم التوصل للحل والمشكل تعود الى احد الاجراءات المخزنه الا وهو sp_slbrs_GetPostByAreas وهذا كوده بعد التعديل

USE [DbpPWR03]

GO

/****** Object: StoredProcedure [dbo].[sp_slbrs_GetPostByAreas] Script Date: 12/19/2011 02:22:55 ******/

SET ANSI_NULLS OFF

GO

SET QUOTED_IDENTIFIER OFF

GO

ALTER PROCEDURE [dbo].[sp_slbrs_GetPostByAreas]

-- Add the parameters for the stored procedure here

@intAreaID int

AS

BEGIN

-- SET NOCOUNT ON added to prevent extra result sets from

-- interfering with SELECT statements.

SET NOCOUNT ON;

-- Insert statements for procedure here

--SELECT @intAreaID

SELECT slbrs_tlkpPoles.pID, slbrs_tlkpPoles.pLocation

FROM slbrs_tlkpArea CROSS JOIN

slbrs_tlkpLocations CROSS JOIN

slbrs_tlkpPoles

WHERE (slbrs_tlkpArea.aID = @intAreaID) AND (slbrs_tlkpLocations.lArea = slbrs_tlkpArea.aID)

AND (slbrs_tlkpPoles.pLocation = slbrs_tlkpLocations.lID)

END

طبعا اشرت للخطأ باللون الاحمر وقمت بتعطيله, لأن اجراء يرجع قيمة الوسيط الممرر

تم تعديل هذه المشاركة بواسطة VB Helper في 19 ديسمبر 2011 في 02:28

.:: Wish to become better and better ::.

#12

ما شاء الله تبارك الله، لي يومين آبحث وبالآخير آمر صغير ما شفته، يعطيك العافية وجزاك الله خير آخي VB Helper

#13

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

الله يعافيك اخي .. بالتوفيق ..

.:: Wish to become better and better ::.

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

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

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

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

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