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

What are different steps used in JDBC? Write down a small program showing all steps.

Explain Parallel Efficiency of MapReduce.

Suppose that a data warehouse for Big-University consists of the following four dimensions: student, course, semester, and instructor, and two measures count and avg_grade. When at the lowest conceptual level (e.g., for a given student, course, semester, and instructor combination), the avg_grade measure stores the actual course grade of the student. At higher conceptual levels, avg_grade stores the average grade for the given combination. a) Draw a snowflake schema diagram for the data warehouse. b) Starting with the base cuboid [student, course, semester, instructor], what specific OLAP operations (e.g., roll-up from semester to year) should one perform in order to list the average grade of CS courses for each BigUniversity student. c) If each dimension has five levels (including all), such as “student < major < status < university < all”, how many cuboids will this cube contain (including the base and apex cuboids)?