Erro de detalheView:Referência de objeto não definida para uma instância de um objeto
-
15-11-2019 - |
Pergunta
Estou tentando atualizar as informações de um usuário e recebo o seguinte erro:
Referência de objeto não definida como um instância de um objeto.Descrição:Ano Ocorreu uma exceção não tratada durante a execução da web atual pedir.Revise o rastreamento de pilha para obter mais informações sobre o erro e onde se originou no código.
Detalhes da exceção:System.NullReferenceException:Referência de objeto não definida para uma instância de um objeto.
Erro de origem:
Linha 20:'Linha de construtor sem parameontre 21:Linha 22:
user.Email = Directcast (E.NewValues (0), String) Linha 23:User.comment = Directcast (E.NewValues (1), String) Linha 24:user.isApproved = CBool (E.NewValues (2))
O código .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
Abaixo está o código .aspx para o 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
Alguma ideia de como posso resolver isso?
Qualquer ajuda seria muito apreciada.
Obrigado
Solução
Meu primeiro palpite, sem ver mais código, seria que seu user
variável é nula.Você o configurou quando renderizou a página?Presumo que seu código acima seja um postback e então user
perdeu seu valor.