Ниже описывается, как я обычно обрабатываю объекты в состоянии сеанса, в качестве имени сеанса у меня есть константная строка, а затем свойство с параметром get и set для объекта.
Что мне было интересно, так это то, был ли необходим вызов Session.Remove () (чтобы все было чисто и аккуратно) и были ли значительные накладные расходы при выполнении этого удаления.
У меня есть Session.Remove там, в основном потому, что это заставляет меня чувствовать себя лучше (OCD, я знаю), и я чувствую, что сессия чище, но я хотел бы знать, если она не нужна.
private const string sesMyObject = "{C2CC72C3-1466-42D4-8579-CAA11F261D55}";
public MyObject MyObjectProperty
{
get
{
return Session[sesMyObject] as MyObject;
}
set
{
Session.Remove(sesMyObject);
Session.Add(sesMyObject, value);
}
}
EDIT
согласно ответам ниже, я изменил свои свойства следующим образом:
private const string sesMyObject = "{C2CC72C3-1466-42D4-8579-CAA11F261D55}";
public MyObject MyObjectProperty
{
get
{
return Session[sesMyObject] as MyObject;
}
set
{
Session[sesMyObject] = value;
}
}
спасибо!