public void UpdateKeys(ViewKeyCollection keys)
        {
            if (keys == null)
            {
                throw new ArgumentNullException("keys");
            }

            m_data.Keys        = keys;
            m_data.LastUpdated = DateTime.Now();
        }
        public ViewKey(ItemKey key, DateTime effectiveDate)
        {
            if (key == null)
            {
                throw new ArgumentNullException("key");
            }
            if (effectiveDate == null)
            {
                throw new ArgumentNullException("effectiveDate");
            }

            Key           = key;
            EffectiveDate = effectiveDate;
        }
        public int CompareTo(ViewKey other)
        {
            if (other == null)
            {
                return(1);
            }

            //
            // Sorted by descending EffectiveDate, then itemID (ascending)
            //
            int cmp = -DateTime.Compare(EffectiveDate, other.EffectiveDate);

            if (cmp == 0)
            {
                cmp = ItemKey.Compare(Key, other.Key);
            }

            return(cmp);
        }