public override void SendAction() { Ag.LogString("WasUniformUpdate :: SendAction ... Started ... "); if (partOfAll == null) { partOfAll = new List <AmUniform> (); for (int k = 0; k < User.arrUniform.Count; k++) { if (k == 0 || User.arrUniform [k].mustUpdate) { partOfAll.Add(User.arrUniform [k]); } } } SendStr = ""; SendStr = SendStr.AddCodeKeyKKOID(User, 320); SendStr = SendStr.AddKeyValue("formatVersion", 1); string unifArr = ""; int sendNum = partOfAll.Count > 8 ? 8 : partOfAll.Count; Ag.LogDouble(" Update >>> .... Remain >>> " + sendNum); for (int i = 0; i < sendNum; i++) { AmUniform uObj = partOfAll [i]; //Ag.LogString (" Must Update ?? " + uObj.mustUpdate); //if (uObj.mustUpdate || i == 0) unifArr += uObj.ToJsonStr() + " , "; } partOfAll.RemoveRange(0, sendNum); unifArr = unifArr.Substring(0, unifArr.Length - 2); unifArr = unifArr.AddSqreBrakt(); SendStr = SendStr.AddArray("arrUniform", unifArr, false); SendStr = SendStr.AddParen(); postAction += () => { Ag.LogString("WasUniformUpdate :: postAction " + Result.result); if (partOfAll.Count > 0) { Ag.LogIntenseWord(" Update Again .... Remain >>> " + partOfAll.Count); SendAction(); } messageAction(Result.result); Ag.LogString(" postAction "); }; SendAndRciv(); }