Erreur de vue détaillée :La référence d'objet n'est pas définie à une instance d'un objet

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

Question

J'essaie de mettre à jour les informations d'un utilisateur et j'obtiens l'erreur suivante :

La référence d’objet n’est pas définie sur un instance d’un objet.Description:Un non gérée s’est produite pendant l’exécution de la bande en cours demander.Veuillez consulter la trace de la pile Pour plus d’informations sur l’erreur et d’où il provient dans le code.

Détails des exceptions :System.NullReferenceException :Objet référence non définie à une instance d’un objet objet.

Erreur source :

Ligne 20 :'sans paramètre constructeur Ligne 21 :Ligne 22 :
utilisateur. Courriel = DirectCast(e.NewValues(0), Chaîne) Ligne 23 :utilisateur. Commentaire = DirectCast(e.NewValues(1), Chaîne) Ligne 24 :utilisateur. IsApproved = CBool(e.NewValues(2))

Le code .vb est :

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

Vous trouverez ci-dessous le code .aspx pour 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

Une idée de comment je peux trier ça ?

Toute aide serait grandement appréciée.

Merci

Était-ce utile?

La solution

Ma première hypothèse, sans voir plus de code, serait que votre user la variable est nulle.L'avez-vous défini lors du rendu de la page ?Je suppose que votre code ci-dessus est une publication et donc user perdu sa valeur.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top