通常,如果我们要使用Sessions
,则必须支付装箱和拆箱的费用。没有任何方法可以创建在每个会话中实例化的类,我们也可以存储和检索我们的期望数据,并且也具有线程安全性。
答案 0 :(得分:0)
我通常会创建一个为我执行此操作的类,并附带一个或两个泛型函数:
public static class SessionVariables
{
private static T Get<T>(string name) => (T)HttpContext.Current.Session[name];
private static void Set<T>(string name, T value) => HttpContext.Current.Session[name] = value;
public static string Var1
{
get => Get<string>(nameof(Var1));
set => Set(nameof(Var1), value);
}
}