DetailView خطأ:كائن مرجع لم يتم تعيينها إلى مثيل الكائن

StackOverflow https://stackoverflow.com/questions/5061246

سؤال

أنا أحاول تحديث معلومات المستخدم الحصول على الخطأ التالي:

كائن مرجع لم يتم تعيينها إلى مثيل الكائن.وصف:وهو حدث استثناء غير معالج أثناء تنفيذ ويب الحالي طلب.يرجى مراجعة تتبع المكدس لمزيد من المعلومات حول الخطأ و حيث أنها نشأت في المدونة.

تفاصيل الاستثناء:النظام.NullReferenceException:وجوه مرجع لم يتم تعيينها إلى مثيل الكائن.

الخطأ من المصدر:

خط 20:'parameterless منشئ خط 21:خط 22:
المستخدم.Email = DirectCast(هـ.NewValues(0) ، سلسلة) خط 23:المستخدم.تعليق = DirectCast(هـ.NewValues(1), String) سطر 24:المستخدم.IsApproved = CBool(هـ.NewValues(2))

على .vb الكود هو:

Protected Sub UserInfo_ItemUpdating(ByVal sender As Object, ByVal e As DetailsViewUpdateEventArgs)
        'Need to handle the update manually because MembershipUser does not have a
        'parameterless constructor  

        user.Email = DirectCast(e.NewValues(0), String)
        user.Comment = DirectCast(e.NewValues(1), String)
        user.IsApproved = CBool(e.NewValues(2))

        Try
            ' Update user info:
            Membership.UpdateUser(user)

            ' Update user roles:
            UpdateUserRoles()

            UserUpdateMessage.Text = "Update Successful."

            e.Cancel = True
            UserInfo.ChangeMode(DetailsViewMode.[ReadOnly])
        Catch ex As Exception
            UserUpdateMessage.Text = "Update Failed: " + ex.Message

            e.Cancel = True
            UserInfo.ChangeMode(DetailsViewMode.[ReadOnly])
        End Try
    End Sub

أدناه هو .aspx رمز detailView:

 Protected Sub UserInfo_ItemUpdating(ByVal sender As Object, ByVal e As DetailsViewUpdateEventArgs)
        'Need to handle the update manually because MembershipUser does not have a
        'parameterless constructor  

        user.Email = DirectCast(e.NewValues(0), String)
        user.Comment = DirectCast(e.NewValues(1), String)
        user.IsApproved = CBool(e.NewValues(2))

        Try
            ' Update user info:
            Membership.UpdateUser(user)

            ' Update user roles:
            UpdateUserRoles()

            UserUpdateMessage.Text = "Update Successful."

            e.Cancel = True
            UserInfo.ChangeMode(DetailsViewMode.[ReadOnly])
        Catch ex As Exception
            UserUpdateMessage.Text = "Update Failed: " + ex.Message

            e.Cancel = True
            UserInfo.ChangeMode(DetailsViewMode.[ReadOnly])
        End Try
    End Sub

أي فكرة كيف يمكن فرز هذا ؟

أي مساعدة سيكون موضع تقدير كبير.

شكرا

هل كانت مفيدة؟

المحلول

تخميني الأول دون رؤية المزيد من التعليمات البرمجية ، سيكون الخاص بك user متغير باطل.هل قمت بتعيين أنه عندما أصدرت الصفحة ؟ أفترض التعليمات البرمجية أعلاه هو إعادة النشر حتى user فقدت القيمة.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top