일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- MYSQL
- 가로 스크롤 막대
- Banker's
- 한글깨짐
- 나만의 상점
- LEFT JOIN
- Oracle
- 썸머노트
- rounding
- 스크롤 사라짐
- Aspose.cells
- 업비트
- Request.Form
- 일본여행
- Kakao API Address
- MSSQL
- MS-SQL
- Android
- upbit
- 세로 스크롤 막대
- python
- .csv
- chart.js
- CSV
- league of legends
- 시트 탭 사라짐
- 초딩수학
- swift 화면전환
- Excel
- Banker's rounding
- Today
- Total
DBA
세션 상태 구성 mode="SQLServer" 본문
C:\Windows\Microsoft.NET\Framework\v4.0.30319 폴더에 있는 aspnet_regsql.exe를 아래와 같은 옵션으로 실행 한다.
aspnet_regsql -S [컴이름]\[인스턴스이름] -E -ssadd
(예:C:\Windows\Microsoft.NET\Framework\v4.0.30319>aspnet_regsql -S IST-WHLEE-W7\WHLE
E2012 -E -ssadd)
-S : 데이터베이스 서버 이름
-E : 현재의 윈도우 사용자로 데이터베이스에 로그인
-ssadd : 세션 저장 데이터베이스(Session Storage Database)를 추가
==================================================================================================
결과)
C:\Windows\Microsoft.NET\Framework\v4.0.30319>aspnet_regsql -S .\WHLEE2012 -E -s
sadd
세션 상태를 추가하기 시작합니다.
...
완료했습니다.
==================================================================================================
[컴이름]의 "."은 localhost를 의미 함.
그러면 ASPState라는 디비가 생성이 된다.
그런데 웹 사용자는 데이터베이스인 ASPState에 세션 상태를 쓸수 있어야 하는데 ASP.NET 4.0은 응용 프로그램 풀ID(Application pool identity)를 기본 웹 사용자로 하고 있기때문에 제공ID로는 데이터베이스에 접근하지 못한다. 따라서 웹 사용자 ID를 LocalSystem에서 제공하는 ID로 설정 해야 한다.
실행에서 inetmgr
ASP.NET MMC의 연결 창에서 응용 프로그램 풀 선택
ASP.NET 4.0선택 오른쪽 마우스 클릭 고급설정
프로세스 모델 섹션에서 ID의 ApplicationPoolIdentity 옆에 버튼 클릭 LocalSystem 선택
확인
한가지 더하면 StateServer 모드나 SQLServer 모드의 경우
세션 상태로 저장하는 객체는 직렬화 되어야 한다.
클래스 정의 윗 부분에 [Serialization]을 명시 한다.