public static void UpdateSettingsDictionary(int storeId, short paymentProviderId, Dictionary <string, string> settings) { using (esTransactionScope transaction = new esTransactionScope()) { // DELETE all existing settings for this store/provider StorePaymentProviderSettingQuery qDelete = new StorePaymentProviderSettingQuery(); qDelete.Where(qDelete.StoreId == storeId, qDelete.PaymentProviderId == paymentProviderId); StorePaymentProviderSettingCollection oldSettings = new StorePaymentProviderSettingCollection(); oldSettings.Load(qDelete); oldSettings.MarkAllAsDeleted(); oldSettings.Save(); // INSERT new settings for this store/provider if (settings.Keys.Count > 0) { StorePaymentProviderSettingCollection newSettings = new StorePaymentProviderSettingCollection(); foreach (KeyValuePair <string, string> setting in settings) { StorePaymentProviderSetting newSetting = newSettings.AddNew(); newSetting.StoreId = storeId; newSetting.PaymentProviderId = paymentProviderId; newSetting.Name = setting.Key; newSetting.Value = setting.Value; } newSettings.Save(); } transaction.Complete(); } }
private bool LoadByPrimaryKeyDynamic(System.Int32 storeId, System.Int16 paymentProviderId, System.String name) { StorePaymentProviderSettingQuery query = new StorePaymentProviderSettingQuery(); query.Where(query.StoreId == storeId, query.PaymentProviderId == paymentProviderId, query.Name == name); return(this.Load(query)); }
protected void InitQuery(StorePaymentProviderSettingQuery query) { query.OnLoadDelegate = this.OnQueryLoaded; if (!query.es2.HasConnection) { query.es2.Connection = ((IEntityCollection)this).Connection; } }
public static Dictionary <string, string> GetSettingsDictionary(int storeId, short paymentProviderId) { Dictionary <string, string> settings = new Dictionary <string, string>(); StorePaymentProviderSettingQuery q = new StorePaymentProviderSettingQuery(); q.Select(q.Name, q.Value); q.Where(q.StoreId == storeId, q.PaymentProviderId == paymentProviderId); using (IDataReader reader = q.ExecuteReader()) { while (reader.Read()) { settings[reader.GetString(0)] = reader.GetString(1); } reader.Close(); } return(settings); }
public bool Load(StorePaymentProviderSettingQuery query) { this.query = query; InitQuery(this.query); return(Query.Load()); }