using System; using System.Collections.Generic; using System.Linq; using System.Text; using MySqlConnector; using Sony.Filtr.Contracts.Entities; using Sony.Filtr.Database; namespace Sony.Filtr.Core.Settings { public class SettingsFactory { public void SaveSetting(string key, string value, Application application) { using (MySqlConnection conn = DatabaseHandler.GetOpenConnection()) { MySqlCommand cmd = new MySqlCommand("INSERT INTO tblSetting (intApplicationInstanceID, strKey, strValue) VALUES (@intApplicationID, @strKey, @strValue) ON DUPLICATE KEY UPDATE strValue = @strValue", conn); cmd.Parameters.AddWithValue("intApplicationID", application.ID); cmd.Parameters.AddWithValue("strKey", key); cmd.Parameters.AddWithValue("strValue", value); cmd.ExecuteNonQuery(); } } public Dictionary GetSettings(Application application) { Dictionary settings = new Dictionary(); using (MySqlConnection conn = DatabaseHandler.GetOpenReadOnlyConnection()) { MySqlCommand cmd = new MySqlCommand("SELECT strKey, strValue FROM tblSetting WHERE intApplicationInstanceID=@intApplicationInstanceID", conn); cmd.Parameters.AddWithValue("@intApplicationInstanceID", application.ID); MySqlDataReader reader = cmd.ExecuteReader(); while (reader.Read()) { settings.Add(reader.GetString(0), reader.GetString(1)); } reader.Close(); } return settings; } } }