private static CardExpirationEmailRemindersLogTableEntity GetReminderEmailForCardExpiration(string accountID, int daysTillExpiration)
        {
            CloudTableClient cloudTableClient = Sahara.Core.Settings.Azure.Storage.StorageConnections.PlatformStorage.CreateCloudTableClient();

            //Create and set retry policy
            //IRetryPolicy exponentialRetryPolicy = new ExponentialRetry(TimeSpan.FromSeconds(1), 4);
            IRetryPolicy linearRetryPolicy = new LinearRetry(TimeSpan.FromSeconds(1), 3);

            cloudTableClient.DefaultRequestOptions.RetryPolicy = linearRetryPolicy;

            CloudTable cloudTable = cloudTableClient.GetTableReference(ReminderEmailsCardExpirationLogTableName);

            cloudTable.CreateIfNotExists();

            TableQuery <CardExpirationEmailRemindersLogTableEntity> query = new TableQuery <CardExpirationEmailRemindersLogTableEntity>()
                                                                            .Where(TableQuery.CombineFilters(
                                                                                       TableQuery.GenerateFilterCondition("PartitionKey", QueryComparisons.Equal, accountID),
                                                                                       TableOperators.And,
                                                                                       TableQuery.GenerateFilterCondition("RowKey", QueryComparisons.Equal, daysTillExpiration.ToString())
                                                                                       ));

            CardExpirationEmailRemindersLogTableEntity cardExirationReminderEmailLog = cloudTable.ExecuteQuery(query).FirstOrDefault();

            return(cardExirationReminderEmailLog);
        }
        private static bool StoreReminderEmailForCardExpiration(string accountID, string accountName, DateTime CardExirationDate, int daysTillExpiration)
        {
            var cardExirationReminderEmailLog = new CardExpirationEmailRemindersLogTableEntity(accountID, accountName, CardExirationDate, daysTillExpiration);

            TableOperation operation = TableOperation.Insert((cardExirationReminderEmailLog as TableEntity));

            try
            {
                cardExirationReminderEmailLog.cloudTable.Execute(operation);
                return(true);
            }
            catch (Exception e)
            {
                //Log exception and email platform admins
                PlatformExceptionsHelper.LogExceptionAndAlertAdmins(
                    e,
                    "attempting to store reminder email for card expiration to table storage",
                    System.Reflection.MethodBase.GetCurrentMethod(),
                    accountID,
                    accountName
                    );

                return(false);
            }
        }