2016-03-28 142 views
0

我正在创建用C#编写的ASP.NET MVC应用程序。我在注册页面添加了新变量,例如“FirstName”“LastName”,它们存储在AspNetUsers表中。如何更新ASP.NET MVC中的用户详细信息

我创建了一个用户可以查看这些详细信息的配置文件页面,但我想让用户编辑和更新这些详细信息。我查看了ManageController中的“ChangePassword”任务,但这似乎不能转化为其他变量。

如何让用户在注册后更改这些变量?

+0

这可能会有帮助。 http://stackoverflow.com/questions/33430083/create-editable-cshtml-view-page-in-asp-net-mvc-5 – Ashu

+0

你能提供一些代码吗? – gypsyCoder

回答

1

我会首先创建一个视图模型来处理数据:

class ProfileViewModel { 
    public string FirstName { get; set; } 
    public string LastName { get; set; } 
    (...) 
} 

然后你ManageController,你可以做这样的事情:

[HttpPost] 
[ValidateAntiForgeryToken] 
public async Task<ActionResult> UpdateUser(ProfileViewModel model) { 
    //get current user and update 
    var user = await UserManager.FindByIdAsync(User.Identity.GetUserId()); 
    user.FirstName = model.FirstName; 
    user.LastName = model.LastName; 

    var updateResult = await UserManager.UpdateAsync(user); 
    if (updateResult.Succeeded) { 
     //do something and return 
    } 
    //failed - do something else and return 
} 
相关问题