public async Task<userInfo> CheckTempGUID(string id) { userInfo user = null; Client client = null; try { using (WW_DevEntities db = new WW_DevEntities()) { client = db.Clients.Where(q => q.TempGUID == id).FirstOrDefault(); //couldn't find user in client table if (client == null) return null; ApplicationUser aspUser = await FindAspUserByUserId(client.AspUserId); //couldn't find user in asp user table if (aspUser == null) return null; if (client.TempGUIDExpire > DateTime.Now) { user = new userInfo { FirstName = client.FirstName, LastName = client.LastName, UserName = aspUser.UserName, Roles = new List<string>(), AspUserId = client.AspUserId, CreateDate = client.CreatedDate.ToShortDateString() }; user.Roles.AddRange(await FindRolesByAspUserId(client.AspUserId)); } client.TempGUID = null; client.TempGUIDExpire = null; db.SaveChanges(); } return user; } catch (Exception ex) { ErroLogging.LogError(ex); throw ex; } }
public string SetTempGUID(ApplicationUser model) { try { Client client; double minutes = double.Parse(Config.TempGUIDLengthInMinutes); DateTime guidExpirationTime = DateTime.Now.AddMinutes(minutes); using (WW_DevEntities db = new WW_DevEntities()) { client = db.Clients.Where(q => q.AspUserId == model.Id).FirstOrDefault(); if (client == null) return "There was no client with that Id."; client.TempGUID = Guid.NewGuid().ToString(); client.TempGUIDExpire = guidExpirationTime; db.SaveChanges(); return client.TempGUID; } } catch (Exception ex) { ErroLogging.LogError(ex); throw ex; } }