public virtual int Delete(UpdateInfoType type)
        {
            int count = 0;

            using (var db = this.CreateDbContext())
            {
                db.Configuration.AutoDetectChangesEnabled = true;
                using (db.BeginTransaction())
                {
                    var m = db.UpdateInfo.Where(q => q.Type == type).FirstOrDefault();
                    if (m != null)
                    {
                        db.Entry(m).State = System.Data.Entity.EntityState.Deleted;
                        db.AddCommitCallback(() =>
                        {
                            var updateInfoCache = this.GetCache <IUpdateInfoCache>();
                            updateInfoCache.Remove();
                        });
                        count += db.SaveChanges();
                        db.Commit();
                    }
                }
            }

            return(count);
        }
        public virtual UpdateInfoDto Get(UpdateInfoType type)
        {
            UpdateInfoDto vm    = null;
            var           list  = GetList();
            var           query = from q in list
                                  where q.Type == type
                                  select q;

            vm = query.FirstOrDefault();

            return(vm);
        }
Ejemplo n.º 3
0
        public static UpdateInfoResult UpdateInfo(int n4NexonSN, UpdateInfoType type, int n4Arg)
        {
            UpdateInfoResult updateInfoResult = new UpdateInfoResult();
            Default          @default         = Authenticator.CreateClientFromSN(n4NexonSN);
            int num = 0;

            if (@default == null)
            {
                updateInfoResult.nErrorCode      = 20024;
                updateInfoResult.strErrorMessage = "invalide nexon sn." + Environment.NewLine + "nNexonSN : " + n4NexonSN.ToString();
                return(updateInfoResult);
            }
            for (;;)
            {
                try
                {
                    UpdateInfoResult updateInfoResult2 = @default.UpdateInfo(n4NexonSN, (int)type, n4Arg);
                    updateInfoResult.nErrorCode      = updateInfoResult2.nErrorCode;
                    updateInfoResult.strErrorMessage = updateInfoResult2.strErrorMessage;
                }
                catch (Exception ex)
                {
                    if (num < Config.Authenticator.Soap.RetryCount)
                    {
                        num++;
                        if (num == Config.Authenticator.Soap.RetryCount)
                        {
                            @default.Timeout = Config.Authenticator.Soap.LongTimeout;
                        }
                        continue;
                    }
                    updateInfoResult.nErrorCode      = 20023;
                    updateInfoResult.strErrorMessage = "A unknown exception occured while calling a soap method." + Environment.NewLine + ex.ToString();
                    ErrorLogger.WriteLog(ErrorCode.SoapCallFailed, updateInfoResult.strErrorMessage, ex.StackTrace, string.Empty, "NexonSN: " + n4NexonSN.ToString() + ", Argument: " + n4Arg.ToString());
                }
                finally
                {
                    @default.Dispose();
                }
                break;
            }
            return(updateInfoResult);
        }