How to get user profile data from ASP.NET MVC cust

2019-01-26 11:35发布

问题:

With the help of this blog, I have added a custom profile property OfficeKey to ApplicationUser class (in IdentityModels.cs file):

public class ApplicationUser : IdentityUser
{
      public int OfficeKey { get; set; }

      //remaining code here
}

I can get user name like this:

   User.Identity.Name

How do I get custom user data OfficeKey?

I have tried these:

How to get Identity User Data from Asp.net mvc Model

How to get user email address from ASP.NET MVC Default Mempership Model?

NB: It is an ASP.NET MVC 5 web application with MySQL membership provider.

回答1:

If you configure the UserManager with the ApplicationUser it will return the user with the information as follows:

 // Create manager
 var manager = new UserManager<ApplicationUser>(
    new UserStore<ApplicationUser>(
        new ApplicationDbContext()))

// Find user
var user = manager.FindById(User.Identity.GetUserId());

The OfficeKey will be available in the user.