I don’t undertand why I’m getting this error, code was working and running perfectly earlier. I was trying to update the user’s email via button. It worked fine but now for some reason it keeps giving me the error:
“Object reference not set to an instance of an object.
Line 34: EmailTextBox.Text = u.Email”
Been scratching at this for a couple of hours now, anyone have an idea what it might be?
My aspx.vb code is:
Public Class _Default
Inherits System.Web.UI.Page
Dim u As MembershipUser
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
u = Membership.GetUser(User.Identity.Name)
If Not IsPostBack Then
EmailTextBox.Text = u.Email
End If
End Sub
Public Sub UpdateEmailButton_OnClick(ByVal sender As Object, ByVal args As EventArgs)
Try
u.Email = EmailTextBox.Text
Membership.UpdateUser(u)
Msg.Text = "User e-mail updated."
Catch e As System.Configuration.Provider.ProviderException
Msg.Text = e.Message
End Try
End Sub
aspx code:
<h3>Update E-Mail Address for <%=User.Identity.Name%></h3>
<asp:Label id="Msg" ForeColor="maroon" runat="server" /><br />
<table cellpadding="3" border="0">
<tr>
<td>E-mail Address:</td>
<td><asp:TextBox id="EmailTextBox" MaxLength="128" Columns="30" runat="server" /></td>
<td><asp:RequiredFieldValidator id="EmailRequiredValidator" runat="server"
ControlToValidate="EmailTextBox" ForeColor="red"
Display="Static" ErrorMessage="Required" /></td>
</tr>
<tr>
<td></td>
<td><asp:Button id="UpdateEmailButton"
Text="Update E-mail"
OnClick="UpdateEmailButton_OnClick"
runat="server" /></td>
</tr>
</table>
you need into to the debugging model and see the u = Membership.GetUser(User.Identity.Name) whether is null.
i guess the Membership.GetUser(User.Identity.Name) return null. may be your logged was timeout,may be just MembershipUser occure error.