Как это?:
HttpContext.Session.Set("Cities", GetCity(stateid));
или
HttpContext.Session.Set<List<SelectListItem>>(key, result);
Чтобы разрешить использование сеансов,
public void ConfigureServices(IServiceCollection services)
{
....
services.AddSession(options => {
options.IdleTimeout = <your session cookie timeout>;
options.Cookie.HttpOnly = true;
});
....
}
public void Configure(IApplicationBuilder app, IHostingEnvironment env)
{
....
app.UseSession();
....
}
и методы расширения для установки и получения сериализуемых объектов:
public static class SessionExtensions
{
public static void Set<T>(this ISession session, string key, T value)
{
session.SetString(key, JsonConvert.SerializeObject(value));
}
public static T Get<T>(this ISession session, string key)
{
var value = session.GetString(key);
return value == null ? default(T) :
JsonConvert.DeserializeObject<T>(value);
}
}
больше на Состояние сеанса и приложения в ASP.NET Core