?
Solved

Can't Update Members database Membership.UpdateUser

Posted on 2008-06-16
4
Medium Priority
?
1,201 Views
Last Modified: 2010-04-21
Hi

I have been having a problem updating the ASPNETDB.MDF Created by Visual Studio when creating Membership forms like login new user etc

I Have created a GridView to edit existing user in this database updating Roles works but when i try to Update fields like Email or ISApproved it is not save the changes to the database

    protected void gdvEdit_RowUpdating(object sender, GridViewUpdateEventArgs e)
    {
        int intIndex = Convert.ToInt32(e.RowIndex);
     

        TextBox txtUserName = (TextBox)gdvEdit.Rows[intIndex].FindControl("txtUserName");
        TextBox txtEmail = (TextBox)gdvEdit.Rows[intIndex].FindControl("txtEmail");
        CheckBox chkEditIsLockedOut = (CheckBox)gdvEdit.Rows[intIndex].FindControl("chkEditIsLockedOut");
        ListBox lsbRoles = (ListBox)gdvEdit.Rows[intIndex].FindControl("lsbRoles");

        //Remove all Roles From User
        string[] userRoles = Roles.GetRolesForUser(gdvEdit.DataKeys[intIndex][0].ToString());
        foreach (string strRole in userRoles)
        {
            Roles.RemoveUserFromRole(gdvEdit.DataKeys[intIndex][0].ToString(), strRole);
        }

        //Replace with new selection of roles
        for (int i = 0; i < lsbRoles.Items.Count; i++)
        {
            if (lsbRoles.Items[i].Selected == true)

                Roles.AddUserToRole(gdvEdit.DataKeys[intIndex][0].ToString(), lsbRoles.Items[i].Value);
        }

        string UserName = gdvEdit.DataKeys[intIndex][0].ToString();
        MembershipUser UserDetails = Membership.GetUser(UserName);

        //Update User Details
        UserDetails.IsApproved = true;
        UserDetails.Email = txtEmail.Text.Trim();

        if (chkEditIsLockedOut.Checked == false) { UserDetails.UnlockUser(); }
        Membership.UpdateUser(UserDetails);

        //Rebind GridView
        gdvEdit.EditIndex = -1;
        Bind_gdvEdit();
    }

Any Ideas on why this maybe happing would be appreciated

Thanks
John
0
Comment
Question by:Filtered
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 2
4 Comments
 

Author Comment

by:Filtered
ID: 21818279
Hi

If anyone would like me to send them the project (it is quite small only has few pages and the database) so that they could step through the code and detect something that i'm unaware of i will gladly send it to them by email as I can not  upload the project to this site even as a zip file.

Thanks
John
0
 
LVL 13

Accepted Solution

by:
joechina earned 2000 total points
ID: 21822341
Have you tried to move

 if (chkEditIsLockedOut.Checked == false) { UserDetails.UnlockUser(); }

down after the update?

UnlockUser might update the database first(You can do a quick check), so when you update the user, the record status is different from when you get the user.
0
 

Author Closing Comment

by:Filtered
ID: 31467842
Thank you very much joechina that has done the trick :)
0

Featured Post

Optimize your web performance

What's in the eBook?
- Full list of reasons for poor performance
- Ultimate measures to speed things up
- Primary web monitoring types
- KPIs you should be monitoring in order to increase your ROI

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

by Mark Wills Attending one of Rob Farley's seminars the other day, I heard the phrase "The Accidental DBA" and fell in love with it. It got me thinking about the plight of the newcomer to SQL Server...  So if you are the accidental DBA, or, simp…
The article shows the basic steps of integrating an HTML theme template into an ASP.NET MVC project
This tutorial will teach you the special effect of super speed similar to the fictional character Wally West aka "The Flash" After Shake : http://www.videocopilot.net/presets/after_shake/ All lightning effects with instructions : http://www.mediaf…
Have you created a query with information for a calendar? ... and then, abra-cadabra, the calendar is done?! I am going to show you how to make that happen. Visualize your data!  ... really see it To use the code to create a calendar from a q…

770 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question