Frage

Ich versuche, Benutzerinformationen zu aktualisieren und erhalte die folgende Fehlermeldung:

Der Objektverweis wurde nicht auf eine Instanz eines Objekts festgelegt.Beschreibung:Bei der Ausführung der aktuellen Webanforderung trat eine unberechtigte Ausnahme auf.Bitte überprüfen Sie die Stapelverfolgung für weitere Informationen zum Fehler und wo er im Code stammt.

Ausnahmedetails:System.NullReferenceException:Der Objektverweis wurde nicht auf eine Instanz eines Objekts festgelegt.

Quellfehler:

Zeile 20:'Parameterlose Konstruktorlinie 21:Zeile 22:
user.Email = DirectCast (e.NewValues ​​(0), String) Zeile 23:user.comment = DirectCast (E.NewValues ​​(1), String) Zeile 24:user.is genehmigt = CBOOL (E.NewValues ​​(2))

Der .vb-Code lautet:

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

Unten finden Sie den ASPX-Code für die Detailansicht:

 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

Irgendeine Idee, wie ich das sortieren kann?

Jede Hilfe wäre sehr dankbar.

Danke

War es hilfreich?

Lösung

Meine erste Vermutung, ohne mehr Code zu sehen, wäre, dass Ihr user Variable ist null.Haben Sie es beim Rendern der Seite festgelegt?Ich gehe davon aus, dass Ihr Code oben ein Postback ist und so user seinen Wert verloren.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top