Во многих местах я видел следующий рисунок. Рассмотрим код:Нужно уточнить, как работает сеанс?
Customer cust = (Customer) Session["Customer"];
//Do something to the object cust
Session["Customer"] = cust
и код:
Customer cust = (Customer) Cache["Customer"];
//do something to object cust
Cache["Customer"] = cust;
Теперь, во втором случае сдачи объекта КЛИЕНТ обратно в кэш не требуется, поскольку ссылка такая же, и любые изменения к объект cust должен быть отражен в кеше.
Но я не думаю, что это так в случае сеанса, где объект cust должен быть явно помещен обратно в сеанс. Однако я не уверен. Будет ли изменение отражать в Сессии, если я не укажу явное указание, как указано выше?
И если это необходимо сделать явно, почему разница в поведении с объектом Cache? Оба места, на которые мы, похоже, делаем ссылку.
Это для C#, ASP.NET
Возможно, вы захотите указать язык и рамки, о которых вы спрашиваете. – kwatford
спасибо, что указали это! – shashi