Exemple #1
0
        /// <summary>
        /// 获取自动增加后的编号
        /// </summary>
        /// <param name="idTypes">自动增加编号类型</param>
        /// <returns>自动增加后的编号</returns>
        public static long GetIncrementedID(IdTypes idTypes)
        {
            long icmetId;
            try
            {
                MongoDatabase mgDb = MongoDBHelper.MongoDB;
                MongoCollection<IncrementIds> mgColt;
                MongoCursor<IncrementIds> mgCurs;
                List<IncrementIds> listIcmetID = new List<IncrementIds>();
                IncrementIds icmetIDs = new IncrementIds();

                mgColt = mgDb.GetCollection<IncrementIds>(IncrementIds.GetCollectionName());
                mgCurs = mgColt.FindAll().SetSortOrder(new SortByDocument("IcmetId", -1)).SetLimit(1); //按字段降序取一条记录
                listIcmetID.AddRange(mgCurs);
                if (listIcmetID.Count == 1)
                {
                    icmetIDs = listIcmetID[0];
                    icmetId = icmetIDs.IcmetId;
                }
                else icmetId = -1;

                return icmetId;
            }
            catch (System.Exception err)
            {
                throw new CBB.ExceptionHelper.OperationException(CBB.ExceptionHelper.ErrType.SystemErr,
                    CBB.ExceptionHelper.ErrNo.DBOperationError, err);
            }
        }
Exemple #2
0
        /// <summary>
        /// 初始化自动增加编号的种子初始值
        /// </summary>
        /// <param name="idTypes">自动增加编号类型</param>
        /// <param name="incrementIdValue">递增种子值</param>
        /// <returns>操作状态</returns>
        public static CBB.ExceptionHelper.OperationResult initialIncrementIdValue(IdTypes idTypes, long incrementIdValue)
        {
            MongoDatabase mgDb = MongoDBHelper.MongoDB;
            MongoCollection<IncrementIds> mgColt = mgDb.GetCollection<IncrementIds>(IncrementIds.GetCollectionName());
            IncrementIds icmetIds = new IncrementIds();
            icmetIds.IdTypes = idTypes;
            icmetIds.IcmetId = incrementIdValue;
            mgColt.Insert(icmetIds);

            return new CBB.ExceptionHelper.OperationResult(true);
        }