public void Create(Badge.Badge badge) { string query = "INSERT INTO badges VALUES (@id, @name, @desc, @user_id)"; using var cmd = new NpgsqlCommand(query, _connection, _transaction); cmd.Parameters.AddWithValue("id", badge.ID); cmd.Parameters.AddWithValue("name", badge.Name); cmd.Parameters.AddWithValue("desc", badge.Description); cmd.Parameters.AddWithValue("user_id", badge.UserID); cmd.ExecuteNonQuery(); }
public Badge.Badge GetBadge(Guid userID, string name) { string query = "select * from badges where user_id = @user_id AND name = @name"; Badge.Badge data; using (var cmd = new NpgsqlCommand(query, _connection, _transaction)) { cmd.Parameters.AddWithValue("user_id", userID); cmd.Parameters.AddWithValue("name", name); using NpgsqlDataReader reader = cmd.ExecuteReader(); if (!reader.Read()) { return(null); } data = new Badge.Badge(reader.GetGuid(0), reader.GetString(1), reader.GetString(2), reader.GetGuid(3), reader.GetDateTime(4)); } return(data); }
public List <Badge.Badge> Find(Guid userID) { string query = "select * from badges where user_id = @user_id"; List <Badge.Badge> badges = new List <Badge.Badge>(); Badge.Badge data; using (var cmd = new NpgsqlCommand(query, _connection, _transaction)) { cmd.Parameters.AddWithValue("user_id", userID); using NpgsqlDataReader reader = cmd.ExecuteReader(); while (reader.Read()) { data = new Badge.Badge(reader.GetGuid(0), reader.GetString(1), reader.GetString(2), reader.GetGuid(3), reader.GetDateTime(4)); badges.Add(data); } } return(badges); }