Heim  >  Artikel  >  Backend-Entwicklung  >  Wie aktiviere ich Sitzungen in C# ASP.NET Core?

Wie aktiviere ich Sitzungen in C# ASP.NET Core?

WBOY
WBOYnach vorne
2023-09-07 08:41:05549Durchsuche

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

Session ist eine Funktion in ASP.NET Core, die es uns ermöglicht, Benutzerdaten zu speichern/speichern.

Session speichert Daten in einem Wörterbuch auf dem Server und verwendet dabei SessionId als Schlüssel.

Die SessionId wird im Cookie des Clients gespeichert. Das SessionId-Cookie wird über gesendet pro Anfrage.

SessionId-Cookie gilt für jeden Browser und kann nicht zwischen verschiedenen Browsern geteilt werden.

SessionId-Cookie hat kein festgelegtes Zeitlimit und wird gelöscht, wenn der Browser geschlossen wird Die Browsersitzung endet.

Auf der Serverseite werden Sitzungen für eine begrenzte Zeit gespeichert. Das standardmäßige Sitzungszeitlimit beträgt Server dauert 20 Minuten, kann aber konfiguriert werden. Das Paket

Microsoft.AspNetCore.Session stellt Middleware für die Verwaltung von Sitzungen in ASP.NET Core bereit. Um Sitzungen in unserer Anwendung verwenden zu können, müssen wir dieses Paket als Abhängigkeit des Projekts in der Datei project.json hinzufügen.

Der nächste Schritt besteht darin, die Sitzung in der Startup-Klasse zu konfigurieren.

Wir müssen die Methode „AddSession“ in der Methode „ConfigureServices“ der Startup-Klasse aufrufen.

Die Methode „AddSession“ verfügt über eine überladene Methode, die verschiedene Sitzungsparameter akzeptiert

Optionen wie Leerlauf-Timeout, Cookie-Name und Cookie-Domäne usw.

Wenn wir keine Sitzungsoptionen übergeben, übernimmt das System die Standardoptionen.

Beispiel

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);
      });
   }
}

So greifen Sie auf die Sitzung zu

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();
   }
}

Das obige ist der detaillierte Inhalt vonWie aktiviere ich Sitzungen in C# ASP.NET Core?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:tutorialspoint.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen