public bool TryGetState <T>(Guid stateId, out T state) { ISessionStateEntry entry = GetSessionStateEntry(stateId); if (entry == null) { state = default(T); return(false); } state = SerializationUtil.Deserialize <T>(entry.SerializedValue); return(true); }
public void RemoveState(Guid stateId) { ISessionStateEntry entry = GetSessionStateEntry(stateId); if (entry == null) { return; } using (Composite.Data.Transactions.TransactionsFacade.SuppressTransactionScope()) { DataFacade.Delete(entry); } }
public void SetState <T>(Guid stateId, T value, DateTime expirationDate) { Verify.ArgumentNotNull(value, "value"); Verify.ArgumentCondition(expirationDate != DateTime.MaxValue, "expirationDate", "Expiration date has to be achievable"); Verify.ArgumentCondition(stateId != Guid.Empty, "stateId", "Guid.Empty isn't an exceptable value."); ISessionStateEntry entry = GetSessionStateEntry(stateId); if (entry == null) { AddState(stateId, value, expirationDate); return; } entry.SerializedValue = SerializationUtil.Serialize(value); entry.ExpirationDate = expirationDate; using (new DataScope(PublicationScope.Unpublished)) using (Composite.Data.Transactions.TransactionsFacade.SuppressTransactionScope()) { DataFacade.Update(entry); } }