public IEnumerable<User> Get() { string userName = Thread.CurrentPrincipal.Identity.Name; var userDataContext = new UserDataContext(); var userRepository = new UserRepository(userDataContext); IQueryable<User> allUsers = userRepository.GetAll(); var result = allUsers.ToList(); return result; }
/// <summary> /// ユーザーアカウント新規登録 /// </summary> /// <param name="newUser">新規ユーザー情報</param> /// <returns> /// 成功した場合:登録したユーザー情報 /// 失敗した場合:エラー情報 /// </returns> public HttpResponseMessage PostUser(User newUser) { if (null == newUser) { string ErrorMessage = "User information is not specified"; var errorResponse = Request.CreateErrorResponse(HttpStatusCode.BadRequest, ErrorMessage); return errorResponse; } if (false == ModelState.IsValid) { var errorInfo = new FeedReaderErrorHandler(ModelState); var errorResponse = Request.CreateResponse<FeedReaderError>(errorInfo.GetHttpStatusCode(), errorInfo.GetErrorInfo()); return errorResponse; } var userDataContext = new UserDataContext(); var userRepository = new UserRepository(userDataContext); try { newUser.SetHashedPassword(); newUser = userRepository.Insert(newUser); if (null == newUser) { if (FeedReaderErrorCode.DuplicateEmail == userRepository.lastError) { // TODO: Create Error handler and pass it as error response var errorResponse = Request.CreateResponse<User>(HttpStatusCode.Ambiguous, newUser); return errorResponse; } } var response = Request.CreateResponse<User>(HttpStatusCode.Created, newUser); string uri = Url.Link("DefaultApi", new { id = newUser.Id }); response.Headers.Location = new Uri(uri); return response; } catch (Exception ex) { var errorInfo = new FeedReaderErrorHandler(ex); var response = Request.CreateResponse<FeedReaderError>(errorInfo.GetHttpStatusCode(), errorInfo.GetErrorInfo()); return response; } }
private bool IsValiedCredentials(string username, string password) { var userDataContext = new UserDataContext(); var userRepository = new UserRepository(userDataContext); IQueryable<User> currentUser = userRepository.SearchFor(x => x.Email == username); var credArray = currentUser.ToArray(); if (credArray.Count() != 1) { return false; } string passwordMD5Hash = CalculateMD5Hash(password); if (credArray[0].Password.ToLower() != passwordMD5Hash) { return false; } return true; }