ASP.Net MVC 3 Membership.UpdateUser(пользователь MembershipUser)

У меня есть проект, который использует MVC3. в моем проекте у меня есть страница, на которой пользователь может редактировать свою учетную запись (UserComment, UserEmail, IsLocked, IsApproved). я уже делаю вид для редактирования учетной записи. У меня есть некоторые проблемы, чтобы сделать Edit Controller. вот мой код:

    [HttpPost]
    public ActionResult Edit(string id, FormCollection collection)
    {
        id = id.Replace("+", " ");
        var user = Membership.GetUser();
        Guid UserGUID = new Guid(user.ProviderUserKey.ToString());
        var SysUser = db.System_User.Single(u => u.User_UserId == UserGUID);

        //this is for updating User Office in my System_user table
        SysUser.User_Office = collection["SysUsers[0].UserOffice"];

        //this is for updating User Account in aspnet_membership table
        user.UserName = collection["SysUsers[0].UserName"];
        Membership.UpdateUser(user);

        user.Comment = collection["SysUsers[0].UserComment"];
        Membership.UpdateUser(user);

        user.Email = collection["SysUsers[0].UserEmail"];
        Membership.UpdateUser(user);

        return View();
    }

Когда я запускаю свой контроллер, я получаю сообщение об ошибке, например:

  1. user.UserName только для чтения, я не могу обновить это.
  2. я получаю значение user.Comment, но его не обновляют.
  3. я получаю сообщение об ошибке в окне "Правка", оно говорит: "Ссылка на объект не установлена ​​для экземпляра объекта". @using (Html.BeginForm("edit/" + @Model.SysUsers[0].UserID, "cpanel/sysuser", FormMethod.Post))

Может кто-нибудь мне помочь?

Спасибо,

2 ответа

Решение

Вы не можете обновить имя пользователя пользователя с помощью поставщика членства ASP.NET. Вам нужно написать собственную логику доступа к данным, если вы хотите обновить имя пользователя.

Я бы предложил использовать поставщика членства прежде всего для аутентификации и встроить все другие методы обслуживания и т. Д. В бизнес-объекты вашего пользователя.

Другие вопросы по тегам