>  기사  >  백엔드 개발  >  C# ASP.NET Core에서 세션을 활성화하는 방법은 무엇입니까?

C# ASP.NET Core에서 세션을 활성화하는 방법은 무엇입니까?

WBOY
WBOY앞으로
2023-09-07 08:41:05653검색

如何在 C# ASP.NET Core 中启用会话?

Session은 사용자 데이터를 저장/저장할 수 있는 ASP.NET Core의 기능입니다.

Session은 SessionId를 키로 사용하여 서버의 사전에 데이터를 저장합니다.

SessionId는 클라이언트의 쿠키에 저장됩니다. SessionId 쿠키는 다음을 통해 전송됩니다. 요청에 따라.

SessionId 쿠키는 브라우저별로 적용되며 다른 브라우저 간에 공유할 수 없습니다.

SessionId 쿠키에는 지정된 시간 초과가 없으며 브라우저가 닫히면 삭제됩니다. 브라우저 세션이 종료됩니다.

서버 측에서는 제한된 시간 동안 세션이 유지됩니다. 기본 세션 시간 초과는 다음과 같습니다. 서버는 20분이지만 구성 가능합니다.

Microsoft.AspNetCore.Session 패키지는 ASP.NET Core에서 세션을 관리하기 위한 미들웨어를 제공합니다. 애플리케이션에서 세션을 사용하려면 이 패키지를 project.json 파일에 프로젝트의 종속성으로 추가해야 합니다.

다음 단계는 Startup 클래스에서 세션을 구성하는 것입니다.

시작 클래스의 ConfigureServices 메서드에서 "AddSession" 메서드를 호출해야 합니다.

"AddSession" 메소드에는 다양한 세션 매개변수를 허용하는 오버로드된 메소드가 있습니다.

유휴 시간 초과, 쿠키 이름, 쿠키 도메인 등과 같은 옵션

세션 옵션을 전달하지 않으면 시스템은 기본 옵션을 사용합니다.

public class Startup {
   public void Configure(IApplicationBuilder app){
      app.UseSession();
      app.UseMvc();
      app.Run(context => {
         return context.Response.WriteAsync("Hello World!");
      });
   }
   public void ConfigureServices(IServiceCollection services){
      services.AddMvc();
      services.AddSession(options => {
         options.IdleTimeout = TimeSpan.FromMinutes(60);
      });
   }
}

세션 접속 방법

public class HomeController : Controller{
   [Route("home/index")]
   public IActionResult Index(){
      HttpContext.Session.SetString("product","laptop");
      return View();
   }
   [Route("home/GetSessionData")]
   public IActionResult GetSessionData(){
      ViewBag.data = HttpContext.Session.GetString("product");;
      return View();
   }
}

위 내용은 C# ASP.NET Core에서 세션을 활성화하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 tutorialspoint.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제