internal void AddIndex(EntityModel owner, EntityIndexModel index)
        {
            owner.CheckDesignMode();
            owner.CheckOwner(index.Owner);

            //TODO:同上AddMember
            var layer = ModelLayer.DEV;
            var seq   = layer == ModelLayer.DEV ? ++_devIndexIdSeq : ++_usrIndexIdSeq;

            if (seq >= MaxIndexId) //TODO:找空的
            {
                throw new Exception("IndexId out of range");
            }

            byte indexId = (byte)(seq << 2 | (byte)layer);

            if (index.Unique)
            {
                indexId |= 1 << IdUtil.INDEXID_UNIQUE_OFFSET;
            }
            index.InitIndexId(indexId);
            Indexes.Add(index);

            owner.ChangeSchemaVersion();
        }
        /// <summary>
        /// Only used for StoreInitiator
        /// </summary>
        internal void AddSysIndex(EntityModel owner, EntityIndexModel index, byte id)
        {
            owner.CheckDesignMode();
            owner.CheckOwner(index.Owner);

            index.InitIndexId(id);
            Indexes.Add(index);
        }