public async Task <SmtpSessionChatter[]> GetSessionChatterAsync(int sessionId) { var result = new List <SmtpSessionChatter>(); using (var connection = this.GetConnection()) { var dataChatter = await connection.QueryAsync <DataChatter>("SELECT * FROM \"Chatter\" WHERE \"SessionId\" = @sessionId ORDER BY \"Id\"", new { sessionId = sessionId }); foreach (var chatter in dataChatter) { Enum.TryParse <Direction>(chatter.Direction, true, out var direction); var chat = new SmtpSessionChatter { Data = chatter.Data, Direction = direction, Timestamp = chatter.Timestamp }; result.Add(chat); } } return(result.ToArray()); }
private SessionChatter GetSessionChatter(SmtpSessionChatter sessionChatter) { if (sessionChatter == null) { return(null); } var result = new SessionChatter { Data = sessionChatter.Data, Direction = sessionChatter.Direction == Direction.In ? ChatterDirection.ToClient : ChatterDirection.ToServer, TimeStamp = sessionChatter.Timestamp }; return(result); }