내 웹 사이트가 처음 실행될 때 한 번만 실행되는 이벤트를 원합니다.
실제로 상황은 asp.net에서 전자 상거래 웹 사이트를 만들고 있으며 고객의 주문을 저장하기 위해 카트 테이블을 만들었습니다.
따라서 웹 사이트가 처음 시작될 때 해당 테이블을 비우고 싶으 므로 다음 사용자는 이전 사용자의 주문을 볼 수 없습니다.
application_start 및 session_start 이벤트를 시도했지만 새 페이지가 열릴 때마다 둘 다 실행됩니다 ... 모든 페이지에 대해 해당 이벤트를 실행하고 싶지 않습니다.
나는 asp.net의 초보자입니다. 어떤 도움을 주시면 감사하겠습니다 ..
미리 감사드립니다 ..
여기서 좀 헷갈리는 것 같아요 ...
"그래서 웹 사이트가 처음 실행될 때 테이블을 비워서 다음 사용자가 이전 사용자의 주문을 볼 수 없도록하고 싶습니다."
Application_Start는 사이트를 처음 방문 할 때만 실행되어야하며, 방문 할 때 중지 된 상태가 아닌 한 다른 사용자에 대해 다시 실행되지 않습니다.
메모리에 테이블 데이터를 생성하는 경우 모든 사용자에게 새로운 데이터가되고 Application_Start가 필요하지 않습니다.
사용자 ID / 세션 ID를 장바구니 테이블에 저장 한 다음 사이트를 방문 할 때마다 올바른 사용자의 바구니 만 검색하거나 쿠키가 만료되기 전에 사이트를 다시 방문하고 계속 유지할 수 있도록 쿠키에 저장하는 것이 좋습니다. 카트.
페이지를 방문 할 때마다 Application_Start가 실행되면 IIS 설정이 약간 의심스러운 것입니다.
global.asax 파일에서 다음 기능을 사용하십시오.
void Application_Start(object sender, EventArgs e)
{
// Code that runs on application startup
}
MSDN에서 가져옴 ...
" Application_Start 및 Application_End 메서드는 HttpApplication 이벤트를 나타내지 않는 특수 메서드입니다. ASP.NET은 각 HttpApplication 인스턴스가 아닌 응용 프로그램 도메인의 수명 동안 한 번 호출합니다."
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다