In this article I will explain with an example, how to use Session in ASP.Net Core MVC.
Note: For enabling and configuring Session in ASP.Net Core, please refer my article Enable Session in ASP.Net Core.
 
 
Namespaces
You will need to import the following namespace.
using Microsoft.AspNetCore.Http;
 
 
Controller
The Controller consists of the following Action method.
Action method for handling GET operation
Inside this Action method, the Session object is created and a string value is set in the Session object using the SetString method of the HttpContext.Session property and finally, the View is returned.
public class HomeController : Controller
{
    public IActionResult Index()
    {
        //Set value in Session object.
        HttpContext.Session.SetString("Message""Hello MVC!");
 
        return View();
    }
}
 
 
View
Inside the View, the IHttpContextAccessor Interface object is injected in order to access the Session and its functions.
Note: For configuring IHttpContextAccessor in ASP.Net Core, please refer my article Using HttpContext in ASP.Net Core.
 
The value from the Session object is displayed in View using the GetString method of the HttpContext.Session property.
@using Microsoft.AspNetCore.Http
@inject IHttpContextAccessor Accessor
 
@{
    Layout = null;
}
 
<!DOCTYPE html>
 
<html>
<head>
    <meta name="viewport" content="width=device-width" />
    <title>Index</title>
</head>
<body>
    <div>
        @Accessor.HttpContext.Session.GetString("Message")
    </div>
</body>
</html>
 
 
Screenshot
ASP.Net Core: Session Tutorial with example
 
 
Downloads