public async Task <User> GetUser() { User user = httpContextAccessor.HttpContext.Session.GetUser(); if (user != null) { return(user); } string accessToken = await tokenAcquisition.GetAccessTokenOnBehalfOfUser(httpContextAccessor.HttpContext, new[] { Constants.ScopeUserRead }); var userInformation = await graphApiOperations.GetUserInformation(accessToken) as JObject; user = userInformation.ToObject <User>(); User dbUser = db.Users.Find(user.Id); if (dbUser == null) { db.Users.Add(user); db.SaveChanges(); } else { user = dbUser; } httpContextAccessor.HttpContext.Session.Set("User", user); return(user); }
public async Task <IActionResult> Profile() { var accessToken = await tokenAcquisition.GetAccessTokenForUserAsync(new[] { WebApp_OpenIDConnect_DotNet.Infrastructure.Constants.ScopeUserRead }); var me = await graphApiOperations.GetUserInformation(accessToken); var photo = await graphApiOperations.GetPhotoAsBase64Async(accessToken); ViewData["Me"] = me; ViewData["Photo"] = photo; return(View()); }
public async Task <IActionResult> Profile() { var accessToken = await tokenAcquisition.GetAccessTokenOnBehalfOfUserAsync(new[] { Constants.ScopeUserRead }); var me = await graphApiOperations.GetUserInformation(accessToken); var photo = await graphApiOperations.GetPhotoAsBase64Async(accessToken); ViewData["Me"] = me; ViewData["Photo"] = photo; return(View()); }