What is Session State? Show with an example to manage session state in ASP.NET Core.

Session State

  •  Session state is an ASP.NET Core mechanism to store user data while the user browses the application.
  • It uses a store maintained by the application to persist data across requests from a client. We should store critical application data in the user’s database and we should cache it in a session only as a performance optimization if required.
  • ASP.NET Core maintains the session state by providing a cookie to the client that contains a session ID. The browser sends this cookie to the application with each request. The application uses the session ID to fetch the session data.


A Session State Example

  • We need to configure the session state before using it in our application. This can be done in the ConfigureServices() method in the Startup. cs class:

         services.AddSession();

  •  The order of configuration is important and we should invoke the UseSession() before invoking UseMVC().
  •  Let’s create a controller with endpoints to set and read a value from the session:


public class WelcomeController: Controller

{

public IActionResult Index() {

HttpContext.Session.SetString("Name", "John");

HttpContext.Session.SetInt32("Age", 32);

return View();

}

public IActionResult Get()

{

User u = new User()


{

Name= HttpContext.Session.GetString("Name"),

Age= HttpContext.Session.GetInt32("Age").Value

};

return View(u);

}

}


  • The Index() method sets the values into session and Get() the method reads the values from the session and passes them into the view.
  • Let’s auto-generate a view to display the model values by right-clicking on the Get() method and using the “Add View” option.
  • Now let’s run the application and navigate to /welcome.
  • This will set the session values.
  • Now let’s navigate to /welcome/get:


Comments

Popular posts from this blog

Legislations and IT in Nepal MCQ IT Officer(PSC)

Explain Aneka thread life cycle /Explain local thread and Aneka thread.

Explain advantages of authority delegation