You should think about your use cases.
Obviously you have several - at least these:
Each of these will have different objects to help implement the use case.
Your User object (editable root) may have a child collection of editable child UserFriend objects. Adding a friend to a user would be a matter of adding an item to that list and saving the User. Obviously there are other ways you can model this, but this model is pretty common.
If you are trying to save the data into the MembershipProvider I can't help - I haven't explored that part of ASP.NET to speak of. I think you are better off using the Profile (or UserProfile?) feature of ASP.NET 2.0, because that allows you to define your own data schema.
Copyright (c) Marimer LLC