コード例 #1
0
 /// <summary>
 /// 更新
 /// </summary>
 /// <param name="info"></param>
 public void Update(AutoincrementInfo info)
 {
     //storeDB.EmployeeInfo.Create(info);
     storeDB.AutoincrementInfo.Attach(info);
     storeDB.Entry(info).State = System.Data.Entity.EntityState.Modified;
     storeDB.SaveChanges();
 }
コード例 #2
0
        //用于监测Context中的Entity是否存在,如果存在,将其Detach,防止出现问题。
        private bool RemoveHoldingEntityInContext(AutoincrementInfo entity)
        {
            var    objContext = ((IObjectContextAdapter)storeDB).ObjectContext;
            var    objSet     = objContext.CreateObjectSet <AutoincrementInfo>();
            var    entityKey  = objContext.CreateEntityKey(objSet.EntitySet.Name, entity);
            Object foundEntity;
            var    exists = objContext.TryGetObjectByKey(entityKey, out foundEntity);

            if (exists)
            {
                objContext.Detach(foundEntity);
            }

            return(exists);
        }
コード例 #3
0
        /// <summary>
        /// 自增数据
        /// </summary>
        /// <param name="key"></param>
        public AutoincrementInfo UpdateAutoincrement(string key)
        {
            var info = storeDB.AutoincrementInfo.Where(x => x.Key == key).FirstOrDefault();

            if (info == null)
            {
                info = new AutoincrementInfo()
                {
                    Key = key, Value = 0
                };
                Insert(info);
            }
            info.Value++;
            Update(info);
            return(info);
        }
コード例 #4
0
 /// <summary>
 /// 插入
 /// </summary>
 /// <param name="info"></param>
 public void Insert(AutoincrementInfo info)
 {
     storeDB.AutoincrementInfo.Add(info);
     storeDB.SaveChanges();
 }