public virtual void Save() { foreach (ISellableInventoryItemEntryState s in this.LoadedSellableInventoryItemEntryStates) { SellableInventoryItemEntryStateDao.Save(s); } foreach (ISellableInventoryItemEntryState s in this._removedSellableInventoryItemEntryStates.Values) { SellableInventoryItemEntryStateDao.Delete(s); } }
public virtual ISellableInventoryItemEntryState Get(long entrySeqId, bool forCreation, bool nullAllowed) { SellableInventoryItemEntryId globalId = new SellableInventoryItemEntryId(_sellableInventoryItemState.SellableInventoryItemId, entrySeqId); if (_loadedSellableInventoryItemEntryStates.ContainsKey(globalId)) { var state = _loadedSellableInventoryItemEntryStates[globalId]; if (this._sellableInventoryItemState != null && this._sellableInventoryItemState.ReadOnly == false) { ((ISellableInventoryItemEntryState)state).ReadOnly = false; } return(state); } if (forCreation || ForReapplying) { var state = new SellableInventoryItemEntryState(ForReapplying); state.SellableInventoryItemEntryId = globalId; _loadedSellableInventoryItemEntryStates.Add(globalId, state); if (this._sellableInventoryItemState != null && this._sellableInventoryItemState.ReadOnly == false) { ((ISellableInventoryItemEntryState)state).ReadOnly = false; } return(state); } else { var state = SellableInventoryItemEntryStateDao.Get(globalId, nullAllowed); if (state != null) { _loadedSellableInventoryItemEntryStates.Add(globalId, state); } if (this._sellableInventoryItemState != null && this._sellableInventoryItemState.ReadOnly == false) { ((ISellableInventoryItemEntryState)state).ReadOnly = false; } return(state); } }