4
在MVC5應用程序中,您如何從當前用戶的AspNetUsers表中獲取值?如何獲取當前用戶的ASP.NET Identity 2中的用戶配置文件值?
例如:其中一個默認文件是PhoneNumber。你如何獲得當前登錄用戶的電話號碼?
我使用的身份2 ...
在MVC5應用程序中,您如何從當前用戶的AspNetUsers表中獲取值?如何獲取當前用戶的ASP.NET Identity 2中的用戶配置文件值?
例如:其中一個默認文件是PhoneNumber。你如何獲得當前登錄用戶的電話號碼?
我使用的身份2 ...
你需要從實體框架IdentityUser
對象(可能就像在你的應用程序ApplicationUser
的後代)。有很多方法可以做到這一點,具體取決於你的位置等等。但是,舉例來說,如果你想要做的是,在控制器,在這裏您可以訪問與User
屬性當前登錄的用戶,可以使用UserManager<TUser>.FindById()
這樣的:
// UserManager here is an instance of UserManager<ApplicationUser>
var user = await UserManager.FindByIdAsync(User.Identity.GetUserId());
var number = user.PhoneNumber;
鉭答覆。使用類似於您的方法的代碼修復了大約一個小時左右的時間:var manager = new UserManager(new UserStore (new ApplicationDbContext())); //獲取用戶對象 var currentUser = manager.FindById(User.Identity.GetUserId()); –
Steve
您可能想要將它包裝在using語句中,因爲您希望在請求結束時處理DbContexts。 – Casey