internal async Task <HuiswerkList> Read(int amount = 5) { HuiswerkList result = new HuiswerkList(5); try { await OpenAsync(); MySqlCommand command = new MySqlCommand { Connection = this._connection, CommandText = $"SELECT * FROM `huiswerk` WHERE deadline > CURDATE() AND finished = 0 ORDER BY `deadline` ASC LIMIT 0, ?amount" }; // Add value to parameter command.Parameters.AddWithValue("?amount", amount); // Prepare query. await command.PrepareAsync(); MySqlDataReader reader = command.ExecuteReader(); int i = 0; while (await reader.ReadAsync()) { Huiswerk huiswerk = new Huiswerk { ID = reader["hw_id"], Subject = reader["subject"], Description = reader["description"], Deadline = reader["deadline"], Author = reader["author"], AuthorGroup = reader["author_group"], AuthorAvatar = reader["author_avatar"], CreationDate = reader["creation_date"], Finished = reader["finished"], FinishedDate = reader["finished_date"], }; result[i] = huiswerk; Console.WriteLine($"huiswerk: {huiswerk.ID}"); Console.WriteLine($"result: {result[i].ID}"); i++; } reader.Close(); this._connection.Close(); } catch (Exception e) { Console.WriteLine(e.Message); } return(result); }
public async Task SeeHomework(int amount = 5) { HuiswerkList hw = await Services.Database.Read(); foreach (Huiswerk huiswerk in hw) { EmbedBuilder builder = new EmbedBuilder() { //Title = "Opdrachten", ThumbnailUrl = (string)huiswerk.AuthorAvatar, Fields = { new EmbedFieldBuilder { Name = "Vak", Value = huiswerk.Subject, IsInline = true }, new EmbedFieldBuilder { Name = "Deadline", Value = huiswerk.Deadline, IsInline = true }, new EmbedFieldBuilder { Name = "Made By", Value = huiswerk.Author, IsInline = true }, new EmbedFieldBuilder { Name = "Description", Value = huiswerk.Description, IsInline = false }, }, Color = new Color(0), }; await this.Context.Channel.SendMessageAsync("", false, builder.Build()); } }