public User GetUser(byte[] data) { var message = Encoding.UTF8.GetString(data); Console.WriteLine(message); try { return(JsonConvert.DeserializeObject <User>(message)); } catch (Exception ex) { exceptionSender.Send($"Error on deserializing. Message: {message}. Exception:{ex}"); return(null); } }
public async Task RepeatAsync(Func <Task> action, int times) { var tryCount = 0; while (true) { try { tryCount++; await action(); break; } catch (Exception ex) { if (tryCount == times + 1) { exceptionSender.Send(ex); break; } Thread.Sleep(1000 * (int)Math.Pow(4, tryCount)); } } }