public static SessionPrincipal GetSessionPrincipal(string token) { UserSession sessionDb = null; UserSession session = null; using (var repository = new GeoMsgContext()) { sessionDb = repository.UserSession.SingleOrDefault(x => x.Token == token); if (sessionDb == null) { return(null); } session = new UserSession { ID = sessionDb.ID, DateCreate = sessionDb.DateCreate, User = sessionDb.User, UserId = sessionDb.UserId }; } var principal = new SessionPrincipal(session); return(principal); }