Ошибка детального просмотра:В экземпляре объекта не задана ссылка на объект
-
15-11-2019 - |
Вопрос
Я пытаюсь обновить информацию о пользователе и получаю следующую ошибку:
В экземпляре объекта не задана ссылка на объект.Описание:Незаверное исключение произошло во время выполнения текущего веб -запроса.Пожалуйста, просмотрите трассировку стека для получения дополнительной информации об ошибке и о том, где он возник в коде.
Подробности исключения:System.NullReferenceException:В экземпляре объекта не задана ссылка на объект.
Ошибка источника:
Строка 20:'Строка конструктора без параметра 21:Строка 22:
user.email = directastce (e.newvalues (0), string) строка 23:user.comment = Directast (E.NewValues (1), String) Строка 24:user.IsApproved = cbool (e.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
потерял свою ценность.