private void ReadPostFromReader(SQLiteDataReader reader, Post post) { post.id = reader.GetField <string>("id"); post.author = reader.GetField <string>("author"); post.html = reader.GetField <string>("html"); post.text = reader.GetField <string>("text"); post.ups = reader.GetField <long>("ups"); post.link = reader.GetField <string>("permalink"); post.title = reader.GetField <string>("title"); post.creation = DateTimeOffset.FromUnixTimeSeconds(reader.GetField <long>("timestamp")); post.state = Util.EnumParse <PostState>(reader.GetField <string>("state")); post.flavorTitle = reader.GetField <string>("flavorTitle"); var reports = new List <Post.Report>(); var reportReader = readReportsFor.ExecuteReader(new Dictionary <string, object>() { ["postId"] = post.id, }); while (reportReader.Read()) { reports.Add(new Post.Report { reason = GetReportType(reportReader.GetField <string>("reportTypeId")), count = reportReader.GetField <long>("count"), }); } reportReader.Close(); post.reports = reports.OrderBy(report => report.count).ToArray(); }
private void ReadReportTypeFromReader(SQLiteDataReader reader, ReportType reportType) { reportType.id = reader.GetField <string>("id"); reportType.category = Util.EnumParse <ReportCategory>(reader.GetField <string>("category")); }