/// <summary> /// Ultimate place to get logged info data /// </summary> /// <param name="principal"></param> /// <param name="error"></param> /// <returns></returns> public LoggedUserCompleteInfo GetLoggedUserAndLocalDBUser(IIdentity principal, bool loadRoles, out string error) { error = null; try { UserManager UserManager = new GreeNova.DGNB.SystemSoftware.SecurityProvider.Managers.UserManager(); if (principal.Name == null) { return(null); } GreeNova.DGNB.SystemSoftware.SecurityProvider.Database.ApplicationUser loggedUser = UserManager.FindByName(principal.Name); LoggedUserCompleteInfo loggedUserInfo = new LoggedUserCompleteInfo(); loggedUserInfo.MainRole = ""; loggedUserInfo.GreenNovaLoggedUser.UserName = loggedUser.UserName; if (loadRoles) { List <string> roles = UserManager.GetRoles(loggedUser.Id).ToList(); loggedUserInfo.GreenNovaLoggedUser.Roles = roles; PermissionManager permissionManager = new PermissionManager(); if (roles != null) { if (roles.Count > 0) { loggedUserInfo.MainRole = permissionManager.GetMainUserRole(roles); } } } loggedUserInfo.LoadLocalDBUser(); return(loggedUserInfo); } catch (Exception ex) { error = "Could not retrive 'GetLoggedUser'. Error:" + ex.Message + Environment.NewLine + ex.StackTrace; return(null); } }
public GreeNova.DGNB.SystemSoftware.SecurityProvider.Database.ApplicationUser GetUser(string name, out string error) { error = null; try { if (name == null) { name = "*****@*****.**"; } UserManager UserManager = new GreeNova.DGNB.SystemSoftware.SecurityProvider.Managers.UserManager(); GreeNova.DGNB.SystemSoftware.SecurityProvider.Database.ApplicationUser user = UserManager.FindByName(name); return(user); } catch (Exception ex) { error = "Could not retrive 'GetLoggedUser'. Error:" + ex.Message + Environment.NewLine + ex.StackTrace; return(null); } }
/// <summary> /// Get logged user. Example: /// ApplicationUser loggedUser = helper.GetLoggedUser(RequestContext.Principal.Identity, out error); /// </summary> /// <param name="principal">use "RequestContext.Principal.Identity"</param> /// <returns></returns> public ApplicationUser GetLoggedUser(IIdentity principal, out string error) { error = null; try { UserManager UserManager = new GreeNova.DGNB.SystemSoftware.SecurityProvider.Managers.UserManager(); if (principal.Name == null) { return(null); } GreeNova.DGNB.SystemSoftware.SecurityProvider.Database.ApplicationUser loggedUser = UserManager.FindByName(principal.Name); ApplicationUser usr = new ApplicationUser(); usr.Id = loggedUser.Id; return(usr); } catch (Exception ex) { error = "Could not retrive 'GetLoggedUser'. Error:" + ex.Message + Environment.NewLine + ex.StackTrace; return(null); } }