public IHttpActionResult Login([FromBody] UserLoginDTO userLogin) { ApiResult result; IQueryable<User> query = from a in db.User where (a.email == userLogin.Email && a.password == userLogin.Password) select a; User user = query.FirstOrDefault<User>(); if (user == null) { return Ok(UserApiResult.LoginFail); } else { //login success //create session Session session = new Session(); session.User = user; DateTime now = DateTime.Now; session.token = Base64Utils.Base64Encode(user.email + ":" + user.password); session.expired = now.AddHours(2); db.Session.Add(session); db.SaveChanges(); LoginResultContentDTO loginDTO = new LoginResultContentDTO(); loginDTO.Message = "login success"; loginDTO.Token = session.token; result = UserApiResult.LoginSuccess; result.Content = loginDTO; return Ok(result); } }
protected void InitializeDB() { using (CF_FamsamEntities context = new CF_FamsamEntities()) { //create user role UserRole userRole = context.UserRole.Find(UserRole.LOGGED_IN_ROLE); if ( userRole == null) { userRole = new UserRole(); userRole.rolename = UserRole.LOGGED_IN_ROLE; context.UserRole.Add(userRole); } //create user User createUser = (from u in context.User where u.email == "mrbean" select u).FirstOrDefault<User>(); if (createUser == null) { createUser = new User { id = DateTime.Now.Millisecond, email = "*****@*****.**", password = "******", firstname = "Lup", lastname = "Bean", UserRole = userRole, role = userRole.rolename }; context.User.Add(createUser); } //create session string token = Base64Utils.Base64Encode("mrbean:mrbean"); Session session = context.Session.Find(token); if (session == null) { session = new Session { token = token, expired = new DateTime(2100, 1, 1), User = createUser, }; context.Session.Add(session); } //new post for photo DateTime thisTime = DateTime.Now; GeneralPost post = new GeneralPost(); post.Id = thisTime.Millisecond; post.lastUpdate = thisTime; post.description = "haha"; post.CreateUser = createUser; post.createUserId = createUser.id; post.postType = GeneralPost.PHOTO_POST_TYPE; context.GeneralPost.Add(post); Photo photo = new Photo(); photo.Post = post; photo.url = "http://photo.url/nothing.jpg"; context.Photo.Add(photo); try { context.SaveChanges(); } catch (Exception ex) { Debug.WriteLine("Exception on Initialize DB Sample: " + ex); } } }