블로그 이미지
래곤
study 관련자료를 한곳으로 자기 개발 목적으로 재태크 재무 관리 목적으로 일상생활의 팁을 공유 하기 위하여 블로그를 개설 하였습니다.

calendar

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 31
반응형

Category

Recent Post

Recent Comment

Archive

2009. 10. 5. 15:54 .Net Project/ASP.NET 3.5 Sp1
반응형

Application : 응용 프로그램 전체 레벨에서 변수 등을 선언

Lock() : 애플리케이션 변수를 잠그는 메서드
Unlock() : 잠긴 애플리케이션 변수를 해제하는 메서드
Add() :  애플리케이션 변수 만들때 사용
Application_start() : 웹 애플리케이션이 시작 할 때 발생
                            (웹 사이트에 첫 번재 사용자가 방문할 때 발생)
Application_End() : 웹 응용프로그램이 끝날때 발생
                            (웹 사이트에서 마지막 사용자가 나간 후 발생)
<참고>
http://msdn.microsoft.com/ko-kr/library/system.windows.application_members(VS.85).aspx 


Session 개체 : 각각의 사용자별 변수를 선언하는 등의 기능
                          웹 사이트에 사용자가 접속 할때 마다 동일한 이름으로
                          사용자별로 전역 변수를 생성

HttpSessionState 클래스의 속성 및 메서드에 프로그래밍 방식으로 액세스
할 수 있도록 하고 있으며, Asp.Net 페이지는 System.web 네임스페이스에 대한
기본 참조를 포함하므로 HttpContext클래스 포함

SessionID : 현재 세션의 고유번호 값 반환
SessionTimeOut : 세션 시간 기록 : 기분값20분. 더 추가시키거나 줄일 경우 사용
Abandon()  : 현재 세션 지우기
Session_Start() : 한명의 사용자(세션)가 방문시 실행
Session_End() : 한명의 사용자가 나간 후 실행

<참고>
http://msdn.microsoft.com/ko-kr/library/system.web.httpcontext.session(VS.80).aspx

 




using System;
using System.Collections;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;

public partial class FrmApplicationSession : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {
        //[1] Application 변수 1증가
        //session 전역변수 : Private한 전역변수

        if (Application["Count"] == null)
        {
           Application.Lock(); //먼저 온 사용자가 변수 수정 잠그기 
           Application["Count"] = 1; //응용프로그램 변수선언/내용 수정(초기화)
           Application.UnLock(); //잠금해제 : 다른 사용자가 사용가능
       
        }
        else
        {
            Application["Count"] = (int)Application["Count"] + 1;
        }
        //[2] Session 변수 1 증가        
        if (Session["Count"] ==null)
        {
            Session["Count"] = 1; //세션변수 선언과 동시에 1로 초기화

        }
        else
        {
            Session["Count"] = (int)Session["Count"] + 1;
        }
        //출력
        //누구나 다 1씩 증가
        this.lblApplication.Text = Application["Count"].ToString();

        //현재 접속자만 1씩 증가
        this.lblSession.Text = Session["Count"].ToString();
       
        //현재 접속자의 고유 접속번호
        this.lblSessionID.Text = Session.SessionID;

        //현재 세션의 유지 시간
        this.lblTimeout.Text = Session.Timeout.ToString();
    }
}






반응형
posted by 래곤