728x90

이전 회원가입 구현방법
 > model에 user 변수정의
 > accountcotroller에 using문 통한 db 선언, valid check, db 어디로 저장할지 , view로 리턴하는 것 정의
 > view에서 html 페이지 구현, input data에 대해 어떤 controller 어떤 변수로 넘길것인지 정의

- 로그인 구현하기
LoginViewModel
로그인 입력데이터 변수만들기


AccountController

1. 로그인 전송 action 만들기
2. get, post 구분하기 (동일 클래스엔 파라미터 추가)

3. db 선언, 반환

Linq 쿼리식 - method chaining
=> A go to B 

var user = db.Users.FirstOrDefault(u => u.UserId.Equals(model.UserId) &&  u.UserPassword.Equals(model.UserPassword));
db.Users -> db에서 Users테이블 얻기
.FirstOrDefault-> 쿼리식 user에서 첫번째나 기본값 출력하겠다
(u => u -> 람다식 : 왼쪽에서 오른쪽 인수로 간다(u는 어떤인수, 지칭하진 않는다)
.UserId.Equals(model.UserId) &&  u.UserPassword.Equals(model.UserPassword)); -> db에서 사용된 userid와 입력받은 userid가 같은지-> 같으면 var user에 담음


HomeController
1. 로그인 성공 view 페이지 만들기



-로그인, 로그아웃 구현하기

1. 미들웨어(Startup.cs) framework에 필요한 기능(session) 추가하기 
2. AccountController에 웹서버 로그인 데이터 session에 담기 - 메모리에 등재  / 로그아웃 시 메모리에서 빠져나감
HttpContext.Session.SetInt32("USER_LOGIN_KEY", user.UserNo);
key :  특정세션을 식별하는 식별자
value : 실제 데이터값

3. Layout view에
sesstion이 null not 에 따라 로그인 처리하는 기준 추가하기

728x90

+ Recent posts