ASP.net,将对象添加到会话变量

Joh*_*jka 3 c# asp.net session

我试图在回发中添加一个对象到一个会话变量.我的代码看起来类似于以下内容.

  Supply sup =  Supplies.GetSupply(supplyItemID);

  Session["CartObjects"] += sup;
Run Code Online (Sandbox Code Playgroud)

现在,编译器抛出一个错误,指出"+ ="运算符不能用于类型'object'和'Supply'.我是否需要在我的Supply对象上实现允许添加它的接口?这是可能的还是我以完全错误的方式思考这个问题.

Cha*_*ndu 11

试试这个:

Supply sup =  Supplies.GetSupply(supplyItemID); 
var cartObjects =  (Session["CartObjects"] as List<Supply>) ?? new List<Supply>();
cartObjects.Add(sup);
Session["CartObjects"] = cartObjects;
Run Code Online (Sandbox Code Playgroud)


Gar*_*y.S 5

除非您尝试创建某种类型的数组,否则语法就是

Session["CartObjects"] = sup;
Run Code Online (Sandbox Code Playgroud)